好吧,我有一个问题。在我当地的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。 我该怎么做才能解决这个问题?
答案 0 :(得分:0)
正如@Chris建议的那样,我的脚本只是写到了另一个文件。之所以发生这种情况,是因为我在脚本的第一部分重命名了文件,而在第二部分没有重命名。