用户phpseclib0.3.1 - sftp get - 当我将本地文件留空时,我没有得到正确的文件内容

时间:2013-01-09 11:11:47

标签: php get sftp phpseclib

如果我使用本地文件名,则会正确复制文件名,但是,如果您将本地文件名保留为空,则应该接收该文件的内容。

示例代码:

  

$ stat = $ sftp-> get('xmlfile.cml','xmlfile.xml');   打印“$ stat
”;

(这很好用)

  

$ xmlcontent = $ sftp-> get('cp1301080801_status.xml');   打印“文件内容= $ xmlcontent<>”;

*(这打印的内容更像是文件的统计信息而不是内容。它以日期开始(这是文件的修改时间戳,后跟一些数字,Web服务器的名称重复约10次每次都增加一个数字 - 比如可能是端口号或字节偏移量)*

如果我不必在传输后打开本地文件,这将使事情变得更容易。任何人都知道这里发生了什么?

1 个答案:

答案 0 :(得分:0)

您可以发布日志副本吗?以下是如何获取它们的示例:

http://phpseclib.sourceforge.net/ssh/examples.html#logging

请注意define()和$ ssh-> getLog()内容。

至于你所遇到的具体问题......什么是打印" $ stat"做?它应该打印" 1"。

另外,fwiw,您在示例中打开了两个不同的文件。我最好的猜测是,你认为自己打开了相同的文件,并期望内容是相同的,而实际上它们应该是不同的,而且你所获得的内容也是如此。 $ sftp-> get()' s实际上是正确的。

日志会告诉我们。