PHP。无法附加到文件
PHP. Cannot append to the file
嗯,我有个问题。在我的本地 LAMP(14.04 LTS 32 位)上,一切都像魔法一样有效。远程服务器也是 Ubuntu 14.04(64 位)。
在生产中,我的程序成功重写了文件:
$myfileresult = fopen('taranko.csv','w+');
echo fwrite($myfileresult,"");
fclose($myfileresult);
但之后我的脚本无法附加任何信息。
$myfileresult = fopen('download.csv','a');
fwrite($myfileresult, $ids.";".$imageLinkAlt.";".$itemNameAlt.";".$features.";".$mods[$x].";".$prices[$x].";".$stockQty[$x].PHP_EOL);
fclose($myfileresult);
我有
ini_set('display_errors', 1);
error_reporting(E_ALL);
在我的脚本中,但在 PHP echo 中确实没有错误或警告。
我试图附加这个字符串:
“1701-1;http://taranko-shop.ru/..”
所以,我使用了 strace,这是我发现的:
open("/home/ci65797/web/mydomain.com/public_html/download.csv", O_WRONLY|O_CREAT|O_APPEND, 0666) = 24
2056 fstat(24, {st_mode=S_IFREG|0644, st_size=160740, ...}) = 0
2056 lseek(24, 0, SEEK_CUR) = 0
2056 lseek(24, 0, SEEK_CUR) = 0
2056 write(24, "1701-1;http://taranko-shop.ru/wa"..., 377) = 377
2056 close(24)
因此,最新字符串旁边包含我尝试追加的字符串。
我的所有目录都是755,文件是644。
我应该怎么做才能解决这个问题?
正如@Chris 建议的那样,我的脚本刚刚写入了另一个文件。发生这种情况是因为我在脚本的第一部分重命名了文件,而在第二部分没有重命名。
嗯,我有个问题。在我的本地 LAMP(14.04 LTS 32 位)上,一切都像魔法一样有效。远程服务器也是 Ubuntu 14.04(64 位)。 在生产中,我的程序成功重写了文件:
$myfileresult = fopen('taranko.csv','w+');
echo fwrite($myfileresult,"");
fclose($myfileresult);
但之后我的脚本无法附加任何信息。
$myfileresult = fopen('download.csv','a');
fwrite($myfileresult, $ids.";".$imageLinkAlt.";".$itemNameAlt.";".$features.";".$mods[$x].";".$prices[$x].";".$stockQty[$x].PHP_EOL);
fclose($myfileresult);
我有
ini_set('display_errors', 1);
error_reporting(E_ALL);
在我的脚本中,但在 PHP echo 中确实没有错误或警告。 我试图附加这个字符串: “1701-1;http://taranko-shop.ru/..” 所以,我使用了 strace,这是我发现的:
open("/home/ci65797/web/mydomain.com/public_html/download.csv", O_WRONLY|O_CREAT|O_APPEND, 0666) = 24
2056 fstat(24, {st_mode=S_IFREG|0644, st_size=160740, ...}) = 0
2056 lseek(24, 0, SEEK_CUR) = 0
2056 lseek(24, 0, SEEK_CUR) = 0
2056 write(24, "1701-1;http://taranko-shop.ru/wa"..., 377) = 377
2056 close(24)
因此,最新字符串旁边包含我尝试追加的字符串。 我的所有目录都是755,文件是644。 我应该怎么做才能解决这个问题?
正如@Chris 建议的那样,我的脚本刚刚写入了另一个文件。发生这种情况是因为我在脚本的第一部分重命名了文件,而在第二部分没有重命名。