1 回复

getSocket()函数资源的读取

提问小军 回复了问题 • 2 人关注 • 2021-11-11 10:05 • 来自相关话题

4 回复

workerman怎样一个长连接多个页面使用啊?

提问dignfei 回复了问题 • 4 人关注 • 2021-11-10 10:22 • 来自相关话题

1 回复

学习workerman开发聊天室demo

提问six 回复了问题 • 2 人关注 • 2021-11-09 21:18 • 来自相关话题

1 回复

有偿解决问题,完成握手,也应答设备了,然后下发指令给设备为什么没反应

回复

提问暖冬八月 回复了问题 • 1 人关注 • 2021-11-09 14:58 • 来自相关话题

1 回复

与服务器断开连接了。您可以重新刷新页面。

提问cai584887013 回复了问题 • 1 人关注 • 2021-11-08 10:41 • 来自相关话题

1 回复

Workerman 中 Worker::stopAll(); Master进程中为什么要增加一个Timer::add() 去清理残留pid数据?

提问six 回复了问题 • 2 人关注 • 2021-11-06 15:06 • 来自相关话题

0 回复

workerman怎么实现vnc服务

回复

提问psocket 发起了问题 • 1 人关注 • 2021-11-06 13:45 • 来自相关话题

1 回复

请问一下webman这个框架是怎么升级的?

提问keytehu 回复了问题 • 2 人关注 • 2021-11-05 19:31 • 来自相关话题

2 回复

使用workerman运行web服务时 Redis报错

提问xcsoft 回复了问题 • 2 人关注 • 2021-11-05 18:44 • 来自相关话题

2 回复

新版webman,取消env的原因是什么?

提问adminv 回复了问题 • 3 人关注 • 2021-11-05 16:01 • 来自相关话题

1 回复

socket.io使用nginx代理遇到的问题

提问walkor 回复了问题 • 2 人关注 • 2021-11-05 15:10 • 来自相关话题

2 回复
1 回复

开启swoole.so 扩展后,业务里有stopAll,退出状态异常 exit_status 65280

提问latin 回复了问题 • 2 人关注 • 2021-11-04 23:25 • 来自相关话题

1 回复

workerman/AutoLoader.php 中 setRootPath相关问题

提问latin 回复了问题 • 2 人关注 • 2021-11-04 23:06 • 来自相关话题

1 回复

多数据库怎么维护连接

提问keytehu 回复了问题 • 2 人关注 • 2021-11-04 22:36 • 来自相关话题

4 回复

events.php 设置命名空间

提问Tinywan 回复了问题 • 5 人关注 • 2021-11-04 22:35 • 来自相关话题

2 回复

Workerman以调试模式启动后stop会报错

提问jamie 回复了问题 • 3 人关注 • 2021-11-04 14:36 • 来自相关话题

0 回复
1 回复

webman如何集成channel、GlobalData组件

提问xiuwang 回复了问题 • 2 人关注 • 2021-11-03 12:26 • 来自相关话题

2 回复

如何让webman在start.php中加载多个路由配置文件

提问cai584887013 回复了问题 • 2 人关注 • 2021-11-03 10:36 • 来自相关话题

3 回复

workerman作为ws客户端,如何保持多个连接?如何动态增删连接?

提问碎玉 回复了问题 • 3 人关注 • 2021-11-02 20:48 • 来自相关话题

0 回复

Workerman中作为ws/wss客户端,如果是有streams需要怎么配置呢?

回复

提问darren2025 发起了问题 • 1 人关注 • 2021-11-02 18:36 • 来自相关话题

1 回复

socket持久连接,是不是没有办法把五个连接区分开?

提问walkor 回复了问题 • 2 人关注 • 2021-11-02 15:24 • 来自相关话题

1 回复

webman升级之后,无法启动

提问walkor 回复了问题 • 2 人关注 • 2021-11-02 15:05 • 来自相关话题

1 回复

【Business worker报错】PHP Warning: Unknown: Epoll MOD(4) on fd 79 failed. Old events were 6

提问walkor 回复了问题 • 2 人关注 • 2021-11-02 10:55 • 来自相关话题

1 回复

GatewayWorker如何把session存放到redis里面呀 求指导

提问walkor 回复了问题 • 2 人关注 • 2021-11-02 10:17 • 来自相关话题

4 回复

GatewayWorker框架可以创建socket.IO么?如何配置呀

提问ayue728 回复了问题 • 2 人关注 • 2021-11-02 10:08 • 来自相关话题

2 回复

我用nginx代理到gateway的,$_SERVER['REMOTE_ADDR'] 获取到的是127.0.0.1 不是客户端的ip,求指导

提问ayue728 回复了问题 • 2 人关注 • 2021-11-02 10:07 • 来自相关话题

1 回复

Timer::add 问题

提问six 回复了问题 • 2 人关注 • 2021-11-01 09:45 • 来自相关话题

1 回复

event-loop:Workerman\Events\Swoole情况下高并发db查询如何优化?

提问six 回复了问题 • 2 人关注 • 2021-10-31 19:47 • 来自相关话题

1 回复

大家都用什么php性能分析工具?

分享张先生 回复了问题 • 2 人关注 • 2021-10-30 22:55 • 来自相关话题

1 回复

redis queue队列消费不能用Timer::add()???

提问six 回复了问题 • 2 人关注 • 2021-10-30 10:41 • 来自相关话题

1 回复

请问date_default_timezone_set是影响全局性的,还是只是当前进程

提问walkor 回复了问题 • 2 人关注 • 2021-10-29 20:22 • 来自相关话题

4 回复

webman 报PDO::prepare(): MySQL server has gone away

提问海盗船长 回复了问题 • 3 人关注 • 2021-10-29 17:01 • 来自相关话题

1 回复

基于webman整合的league/flysystem V2版本的本地上传/cos/oss/qiniu等

第三方库phcent 发表了文章 • 1 个评论 • 136 次浏览 • 2021-10-29 16:33 • 来自相关话题

安装 composer require phcent/webman-filesystem 在config目录下新建filesystem.php并将下列内容导入 return [ 'default' =&g ...查看全部

安装


composer require phcent/webman-filesystem

在config目录下新建filesystem.php并将下列内容导入


return [
'default' => 'local',
'storage' => [
'local' => [
'driver' => \Phcent\WebmanFilesystem\Adapter\LocalAdapterFactory::class,
'root' => runtime_path(),
],
'ftp' => [
'driver' => \Phcent\WebmanFilesystem\Adapter\FtpAdapterFactory::class,
'host' => 'ftp.example.com',
'username' => 'username',
'password' => 'password',
// 'port' => 21,
// 'root' => '/path/to/root',
// 'passive' => true,
// 'ssl' => true,
// 'timeout' => 30,
// 'ignorePassiveAddress' => false,
// 'timestampsOnUnixListingsEnabled' => true,
],
'memory' => [
'driver' => \Phcent\WebmanFilesystem\Adapter\MemoryAdapterFactory::class,
],
's3' => [
'driver' => \Phcent\WebmanFilesystem\Adapter\S3AdapterFactory::class,
'credentials' => [
'key' => 'S3_KEY',
'secret' => 'S3_SECRET',
],
'region' => 'S3_REGION',
'version' => 'latest',
'bucket_endpoint' => false,
'use_path_style_endpoint' => false,
'endpoint' => 'S3_ENDPOINT',
'bucket_name' => 'S3_BUCKET',
],
'minio' => [
'driver' => \Phcent\WebmanFilesystem\Adapter\S3AdapterFactory::class,
'credentials' => [
'key' => 'S3_KEY',
'secret' => 'S3_SECRET',
],
'region' => 'S3_REGION',
'version' => 'latest',
'bucket_endpoint' => false,
'use_path_style_endpoint' => true,
'endpoint' => 'S3_ENDPOINT',
'bucket_name' => 'S3_BUCKET',
],
'oss' => [
'driver' => \Phcent\WebmanFilesystem\Adapter\AliyunOssAdapterFactory::class,
'accessId' => 'OSS_ACCESS_ID',
'accessSecret' => 'OSS_ACCESS_SECRET',
'bucket' => 'OSS_BUCKET',
'endpoint' => 'OSS_ENDPOINT',
// 'timeout' => 3600,
// 'connectTimeout' => 10,
// 'isCName' => false,
// 'token' => null,
// 'proxy' => null,
],
'qiniu' => [
'driver' => \Phcent\WebmanFilesystem\Adapter\QiniuAdapterFactory::class,
'accessKey' => 'QINIU_ACCESS_KEY',
'secretKey' => 'QINIU_SECRET_KEY',
'bucket' => 'QINIU_BUCKET',
'domain' => 'QINBIU_DOMAIN',
],
'cos' => [
'driver' => \Phcent\WebmanFilesystem\Adapter\CosAdapterFactory::class,
'region' => 'COS_REGION',
'app_id' => 'COS_APPID',
'secret_id' => 'COS_SECRET_ID',
'secret_key' => 'COS_SECRET_KEY',
// 可选,如果 bucket 为私有访问请打开此项
// 'signed_url' => false,
'bucket' => 'COS_BUCKET',
'read_from_cdn' => false,
// 'timeout' => 60,
// 'connect_timeout' => 60,
// 'cdn' => '',
// 'scheme' => 'https',
],
],
];


  • 阿里云 OSS 适配器


composer require phcent/flysystem-oss


  • S3 适配器


composer require "league/flysystem-aws-s3-v3:^2.0"


  • 七牛云适配器


composer require "overtrue/flysystem-qiniu:^2.0"


  • 内存适配器


composer require "league/flysystem-memory:^2.0"


  • 腾讯云 COS 适配器


composer require "overtrue/flysystem-cos:^4.0"

使用


通过FilesystemFactory::get('local') 来调用不同的适配器


    use Phcent\WebmanFilesystem\FilesystemFactory;
public function upload(Request $request)
{
$file = $request->file('file');

$filesystem = FilesystemFactory::get('local');
$stream = fopen($file->getRealPath(), 'r+');
$filesystem->writeStream(
'uploads/'.$file->getUploadName(),
$stream
);
fclose($stream);

// Write Files
$filesystem->write('path/to/file.txt', 'contents');

// Add local file
$stream = fopen('local/path/to/file.txt', 'r+');
$result = $filesystem->writeStream('path/to/file.txt', $stream);
if (is_resource($stream)) {
fclose($stream);
}

// Update Files
$filesystem->update('path/to/file.txt', 'new contents');

// Check if a file exists
$exists = $filesystem->has('path/to/file.txt');

// Read Files
$contents = $filesystem->read('path/to/file.txt');

// Delete Files
$filesystem->delete('path/to/file.txt');

// Rename Files
$filesystem->rename('filename.txt', 'newname.txt');

// Copy Files
$filesystem->copy('filename.txt', 'duplicate.txt');

// list the contents
$filesystem->listContents('path', false);
}
4 回复

建议官方能在首页底部建一个“webman交流群”这样更专注更集中快速解决遇到的问题

建议xiaochong0302 回复了问题 • 5 人关注 • 2021-10-29 15:18 • 来自相关话题

2 回复

SSL handshake error: stream_socket_enable_crypto(): SSL operation failed with code 1

提问派大星不会游泳 回复了问题 • 3 人关注 • 2021-10-29 12:06 • 来自相关话题

2 回复

businessworker热更新不执行

提问dangpengsong 回复了问题 • 2 人关注 • 2021-10-29 11:41 • 来自相关话题

1 回复

Error during WebSocket handshake: 'Connection' header value must contain 'Upgrade'

提问six 回复了问题 • 2 人关注 • 2021-10-28 19:11 • 来自相关话题

1 回复

如何避免这个问题出现?

提问six 回复了问题 • 2 人关注 • 2021-10-28 19:09 • 来自相关话题