fwrite,fopen和cronjob - 没有保存到正确的位置

时间:2013-10-22 00:32:38

标签: cron fopen fwrite

我写了一个php脚本来获取我最新的Twitter推文并将其保存到文件中。以下是这样做的部分:

// No errors exist. Write tweets to json/txt file.
$file = $twitteruser."-tweets.txt";
$fh = fopen($file, 'w') or die("can't open file");
fwrite($fh, json_encode($tweets));
fclose($fh);

当我直接在浏览器中运行我的php脚本时,这很好用,但是,当我从cron作业运行文件时,它会在我的用户根目录中创建文件(显然不是正确的位置)。

如果我将上述行更改为:

$file = "public_html/get-tweets/".$twitteruser."-tweets.txt";

cronjob现在可以正常工作并保存到正确的位置,但是在我的浏览器中手动运行该文件会出现fopen错误,该文件不存在。

问题到底是什么?我需要这个来自cronjob和手动。

1 个答案:

答案 0 :(得分:3)

使用文件系统根目录的完整路径,然后两者都应该没问题。