PHP。无法追加到该文件

时间:2018-04-01 14:17:22

标签: php apache fwrite php-5.5

好吧,我有一个问题。在我当地的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。 我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:0)

正如@Chris建议的那样,我的脚本只是写到了另一个文件。之所以发生这种情况,是因为我在脚本的第一部分重命名了文件,而在第二部分没有重命名。