[英]PHP: ftp_get() can download file with same name only once
我在兩個相同實例之一上使用ftp_get()
遇到一個奇怪的問題。 一個在本地主機上,另一個在實際服務器上。 我正在使用以下內容通過FTP下載文件。 兩個實例均從具有相同憑據和相同路徑的相同FTP服務器下載。
$result = ftp_get($connection, $downloadPath, $serverPath, FTP_BINARY);
if ($result) {
$successfulWrites[] = $downloadPath; // file name only without path
} else {
// on second attempt to download file with same name, ftp_get() returns false
// this is where I throw an exception in my code
}
在我的本地主機上,我可以一次又一次地下載相同的文件,而FTP服務器上的文件名或位置都無關緊要。
在第二個實例上,就代碼而言,它與本地主機的實例相同(即從相同的git repo中拉出),我可以下載一次文件,但是不能再次下載相同的文件,並且ftp_get()
返回false。 如果我在FTP服務器上更改了文件名,則可以下載它,但此后將無法再使用。 即ftp_get()
將返回false。
我無權訪問FTP服務器日志。 如果有的話,我今天將嘗試從主機上獲取。 但是誰能想到這可能發生的原因? ftp_get()
只是返回true或false而沒有任何解釋,因此我對此非常ftp_get()
。
我使用的是PHP 5.4,我不知道FTP(常規FTP)服務器的規格是什么。
如所討論的,聽起來ftp_get
成功地獲取了文件並將其寫入本地。 我想知道是否由於權限問題而導致在嘗試再次本地寫入文件時失敗。 因此,FTP通道本身很好,問題僅在本地。
我對此感到有些驚訝,因為我可以想象PHP會發出警告。 在調試時,是否將error_reporting
設置為允許此操作?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.