问题标签 [flysystem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
722 浏览

php - 使用 readStream 和 writeStream 时 PHP League\Flysystem 删除失败

我正在使用 League\Flysystem 在 Amazon S3 上上传文件。上传文件后,我想从服务器中删除文件。起初我使用的是 read 和 write 方法,然后是 delete 方法,它工作得很好。由于我有大文件,使用读取方法不是一个好的解决方案,因为它分配了大量的内存。现在我正在使用 readStream 和 writeStream,但是当 writeStream 完成时,我关闭流并且 delete 方法返回 false。我也尝试使用取消链接,但该文件仍未删除。看起来该文件已被另一个进程使用,但我不确定如何释放它。这是一个代码示例:

我也试过这个,没有运气:

我不得不再次提到,当使用 read 和 write 方法时,删除工作正常。

0 投票
1 回答
321 浏览

csv - 尝试创建新 CSV 时 Flysystem/CSV 抛出异常

我正在使用 Flysystem\CSV 创建 CSV,但我的代码遇到了以下问题:

按照这个例子。

我已经检查过SplTempFileObject是否正在正确实例化,并且确实如此。

然而,有一个异常被抛出AbstractCsv

该行具有以下返回语句:

我已经仔细检查了该软件包是否已正确安装并且是正确的。

PHP 版本5.4.45

0 投票
1 回答
207 浏览

php - Flysystem/CSV 过滤列的子集

是否可以使用Flysystem CSV过滤 CSV 列的子集?

我知道您可以使用AbstractCsv::addFilter(callable $callback)添加任意过滤器,但我认为您不会使用它来删除列。

0 投票
2 回答
1839 浏览

storage - Laravel 存储外观和检索文件

如何获取位于 Storage 中的文件?

我建立了一条路线并将其定向到myCcontroller@myMethod. 方法如下

但我得到了胡言乱语,可能是原始数据。如果文件是图像,我如何让浏览器显示图像,或者如果文件是,我如何下载它a.xls

0 投票
1 回答
9191 浏览

windows - PHP 7.0.5:使用未定义的常量 FTP_BINARY - 假定为 'FTP_BINARY'

在 Windows IIS 上升级到 PHP 7.0.5(最后因为 sqlsrv PDO 驱动程序可用)。我正在使用 Laravel 5.1,当尝试连接到 FTP 驱动器时,我从https://github.com/thephpleague/flysystem/blob/master/src/Adapter/Ftp.php#L19收到以下错误。

Use of undefined constant FTP_BINARY - assumed 'FTP_BINARY'

这是一个用于传输的 PHP 常量,所以应该没有问题,文档中没有任何内容可以说它已被弃用或其他任何内容。FTP_ASCII 是一样的。我所做的唯一一件事就是更改 PHP 版本 + SQL 驱动程序。

参考: http: //php.net/manual/en/function.ftp-put.php

0 投票
0 回答
198 浏览

php - Yii2 Flysystem - Azure 文件系统错误

我在 Yii2 应用程序中使用https://github.com/creocoder/yii2-flysystem 。我在配置中设置了以下内容

在我的控制器中,我正在调用以下内容

但是,我收到此错误:

InvalidArgumentException 提供的 URL 无效。

我也安装了所有依赖项。我不确定我哪里出错了。

0 投票
2 回答
377 浏览

laravel - Laravel Flysystem 和 Rackspace CRON 上传失败,出现 401,而按需上传工作

我们的系统每小时生成各种发票并将其上传到云端。也可以通过单击我们前端的按钮来按需创建发票。

当手动请求创建所述发票时,它永远不会上传失败。至于 cron 在一段时间后生成的发票,所有上传都失败了:

这应该意味着令牌可能已经过期。Rackspace 令牌持续 24 小时,但 Laravel 的存储应该自动刷新令牌。


现在这里有一些有趣的事实:

1) 每次使用 Capistrano 部署我们的代码时,令牌似乎都会刷新,并且 cron 上传会再次工作一段时间。这里要注意的重要一点是,每次部署都会创建一个类似于此的新文件夹来/releases/201605190925提取代码,从头开始安装依赖项,如果一切顺利,则将此文件夹与 Apache 显示的文件夹进行符号链接。

2) Laravel 作业在与 www-data 不同的进程上处理

3) 部署后上传工作是否超过 24 小时很难追踪。我怀疑有时它的作用不止于此。但很难追踪,因为并非每个小时都有需要生成的发票。部署的开发人员不仅仅是我等。

4) 当 cron 失败并且我收到失败通知时,我可以立即去成功生成发票。之后,cron仍然失败。因此,这两个实例似乎在某处存储了不同的令牌。

5)缓存清理php artisan cache:clear似乎没有任何影响

6) 可能尝试过重启 Apache 服务但没有结果

由于它已经持续了一段时间,我已经测试了各种东西,甚至有一次联系了 Rackspace,但他们从他们的结尾找不到任何奇怪的东西......提醒我只是为了捕捉 401 错误,更新令牌并尝试再次。但是 Laravel 和 Flysystem 应该在某个地方自己处理它

由于 Flysystem、Laravel 和 Rackspace 似乎没有其他人遇到类似问题,我怀疑这是 cron 进程的某种独特问题。我只是希望很快我们就可以准备好系统的重构版本,并且问题就会消失。至于现在它仍在开发中,可能还需要一个月的时间。


不要认为它与代码有关,但无论如何这里是上传行:

这是我们的配置:


对此事的任何想法表示赞赏。

0 投票
1 回答
674 浏览

php - Laravel 5.2 FTP 驱动程序抛出 fclose():提供的资源不是有效的流资源

我正在尝试使用 Laravel FTP Flysystem 适配器。按照https://laravel.com/docs/5.2/filesystem上的说明,我已将以下内容添加到我的filesystems.php配置文件中

当我在 FTP 磁盘上运行任何命令时,例如Storage::disk('ftp')->allDirectories('/home/username')出现以下错误

PHP 致命错误:在 ../vendor/league/flysystem/src/Adapter/Ftp.php:455 中带有消息“fclose():提供的资源不是有效的流资源”的未捕获异常“ErrorException”

我已经在 FTP 客户端上测试了 FTP 服务器,一切正常。

0 投票
1 回答
240 浏览

php - Yii2 Azure Flysystem 无法保存错误

当我将文件上传到 Azure 文件存储时,我收到以下错误:

我在配置文件中的设置是:

最后,我调用来保存文件的代码是:

一些可能有用的附加信息

  1. 运行在 yii2 高级框架上
  2. 网络服务器:Windows 2012 上的 IIS 8.5
  3. PHP 5.4.5
  4. 用于安装的作曲家
  5. 它是一个天蓝色的文件系统 - 该错误似乎引发了 blob.core.windows.net 的错误,因为我正在将数据保存到 file.core.windows.net。我应该在配置/设置中进行哪些更改?
0 投票
1 回答
1269 浏览

php - Symfony 3 OneUp Flysystem 错误:没有扩展能够加载“oneup_flysystem”的配置

根据 Flysystem 的配置,我在 config.yml 中进行了以下设置:

我在 services.yml 上提供了以下设置:

结束我通过 SetEnv 设置了以下环境变量:

但我在error.log 上收到以下错误:

[Wed Jul 06 21:11:56.424801 2016] [:error] [pid 21876] [client 127.0.0.1:60488] PHP 致命错误:未捕获 Symfony\Component\DependencyInjection\Exception\InvalidArgumentException:没有扩展能够加载“oneup_flysystem”的配置(在/home/pcmagas/Kwdikas/web/apps/symphotest/app/config/config.yml)。在 /home/pcmagas/Kwdikas/web/apps/symphotest/vendor 中查找命名空间“oneup_flysystem”,找到“framework”、“security”、“twig”、“monolog”、“swiftmailer”、“doctrine”、“sensio_framework_extra” /symfony/symfony/src/Symfony/Component/DependencyInjection/Loader/YamlFileLoader.php:368\n堆栈跟踪:

你有什么想法,这是固定的吗?