【问题标题】:PHP mixing zip and ftp stream wrappersPHP 混合 zip 和 ftp 流包装器
【发布时间】:2014-06-30 14:52:23
【问题描述】:

我不知道如何组合 zip:// 和 ftp:// 流包装器。我想打开读取流到远程 FTP 服务器上 zip 存档中的文件。

以下两个按预期工作;我可以打开一个 FTP 流到服务器,也可以打开一个流到 zip 存档中的文件。

fopen("ftp://user:pass@host/home/user/file.zip", "r");
fopen("zip://file.zip#file.txt", "r");

我想将两者结合起来做类似的事情。

fopen("zip://ftp://user:pass@host/home/user/file.zip#file.txt", "r");

但是通过这种方法我得到:未能打开流:操作失败

不知道如何找出导致错误的原因,所以我不知道这是否可能。

【问题讨论】:

  • 您尝试从 ftp 服务器获取远程 (zip) 文件?
  • 最终尝试获取 zip 文件中的文件。如果我可以使用流包装器来做到这一点,它会更有效率。
  • 取出还是放入?本地还是远程?这是一个 XY 问题,您告诉我们您的解决方案,而不是您真正想要实现的目标。
  • 您不能连接和组合流包装器。
  • 我想读取一个文件 [因此 fopen(..., "r")]。我已更新问题以表明这一点。

标签: php ftp stream zip


【解决方案1】:

看来:

<?php
copy('compress.zlib://ftp://username:password@ftphost.com:21/path/to/file.dat.gz', '/local/copy/of/file.dat');

有效。

http://ciaranmcnulty.com/simplifying-file-operations-using-php-stream-wrappers

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-28
    • 1970-01-01
    • 1970-01-01
    • 2019-03-21
    • 1970-01-01
    • 1970-01-01
    • 2011-05-09
    相关资源
    最近更新 更多