运行Cron Job,文件放入根目录/不是php脚本正在运行

时间:2015-02-18 23:06:33

标签: php cron sitemap

我设置了一个Cron作业来运行php脚本。

php脚本运行正常,只是它将文件(sitemap.xml)输出到根目录而不是" /public_html/mysite.com /"正在执行脚本的目录。如果我在浏览器中运行它,它可以正常工作。

以下是我使用的命令:

/usr/local/bin/php -q /home/myusername/public_html/mysite.com/buildxml.php

这是php代码的文件部分:

$xmlfile = 'sitemap.xml';
file_put_contents($xmlfile, $xmlsitemap);

我试图找出将文件放入" /public_html/mysite.com /"的最佳方法。目录(不是根目录)。

1 个答案:

答案 0 :(得分:2)

指定完整路径

$xmlfile = __DIR__ . '/sitemap.xml';
file_put_contents($xmlfile, $xmlsitemap);

或首先更改工作目录

chdir(__DIR__);
$xmlfile = 'sitemap.xml';
file_put_contents($xmlfile, $xmlsitemap);

注意,__DIR__表示包含当前正在执行的脚本的文件夹的路径。您可能更喜欢指定整个路径,但它们看起来是同一个。