承接 simp/streamwrapper 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

simp/streamwrapper

最新稳定版本:v1.0.3

Composer 安装命令:

composer require simp/streamwrapper

包简介

This library is implements stream wrapper in php to provide clean file access

README 文档

README

This library provides a custom PHP Stream Wrapper, allowing you to register and use custom stream protocols (public:// and global://) for file operations like reading and writing.

Installation

  1. Clone the repository or download the package into your project.

  2. Install dependencies using Composer:

    composer require simp/streamwrapper

Usage

1. Registering Custom Stream Wrappers

The package uses WrapperRegister to register custom stream wrappers.

use Simp\StreamWrapper\Stream\GlobalStreamWrapper;
use Simp\StreamWrapper\WrapperRegister\WrapperRegister;

require_once "vendor/autoload.php";
require_once "PublicWrapper.php";

// Registering the global and public stream wrappers
WrapperRegister::register("global", GlobalStreamWrapper::class);
WrapperRegister::register("public", PublicWrapper::class);

2. Using the Registered Wrappers

Once registered, you can perform file operations using global:// and public:// as stream wrappers.

// Writing and reading using global wrapper
file_put_contents("global://example.txt", "\nLorem ipsum dolor sit amet\n", FILE_APPEND);
echo file_get_contents("global://example.txt");

// Writing and reading using public wrapper
file_put_contents("public://example.txt", "\nHello World!\n", FILE_APPEND);
echo file_get_contents("public://example.txt");

3. Customizing the Public Wrapper

The PublicWrapper.php file extends the base StreamWrapper class, setting a custom $stream_name and $base_path:

class PublicWrapper extends \Simp\StreamWrapper\Stream\StreamWrapper
{
    protected string $stream_name = "public";
    protected string $basePath = "sites/public";
}

Modify the $basePath to change where files are stored when using public:// paths.

Requirements

  • PHP 8.0 or higher
  • Composer for dependency management

License

This project is licensed under the MIT License.

统计信息

  • 总下载量: 77
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 4
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-02-04