Laravel 使用 FastDFS 上传图片

laravel使用FastDFS上传图片

github上的一个client

用PHP Socket 实现的 FastDFS 客户端

(不需要安装php dfs扩展就可以直接使用哦)

FastDFS-Client

github链接地址

github.com/qpwoeiru96/PHP-FastDFS-...

项目clone的本地改下配置就可以使用。不过这里我们演示一下在laravel项目里面如果使用。

1,在项目app的目录下面新建一个文件夹Packages,然后把client的文件都放在该目录下面。

将client代码放在项目里

2,修改各个文件的命名空间

Base.phpTracker.phpStorage.phpFastDFS.phpException.php命名空间都改成


namespace App\Packages;

3,使用

3.1 在上传文件的控制器里引用这几个类


use App\Packages\Base;

use App\Packages\Storage as DfsStorage;

use App\Packages\Tracker;

use App\Packages\Exception;

3.2 具体实现代码


# DFS 配置

$tracker_addr = env("DFS_IP");

$tracker_port = env("DFS_PORT");

$group_name = env("DFS_GROUP_NAME");

# 实例化

$tracker      = new Tracker($tracker_addr, $tracker_port);

$storage_info = $tracker->applyStorage(env("DFS_GROUP_NAME"));

$storage = new DfsStorage($storage_info['storage_addr'], $storage_info['storage_port']);

# 上传文件

$res = $storage->uploadFile($storage_info['storage_index'], $flieName);

3.3 修改配置 在项目下的.env添加配置


DFS_IP=192.168.152.128 #dfs主机的ip

DFS_PORT=22122         #端口

DFS_GROUP_NAME=group1  #group名称

4. 最后看下效果

效果图1

效果图2

原文链接 www.dooruo.com/blog/laravel-fastdf...

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!