我有一个非常简单的php文件,每次运行时都会创建一个文本文件:
$date = date('Y-m-d H-i-s', time());
$log_name = "Cronjob". $date;
if($fh = fopen($log_name,'w')){
fwrite($fh, print_r($date));
fclose($fh);
}
当我使用浏览器运行文件时,在我的服务器上创建了一个txt文件。当我用cronjob运行文件时,它不会创建一个txt文件。 当我去私人>我的服务器上的cron.log我看到cronjob工作正常,结果打印到cron.log中。
有人可以告诉我为什么吗?我需要在服务器上写下该文件:)
答案 0 :(得分:3)
在cronjob中执行时,您需要提供完整路径。该脚本不会在它所在的目录中执行,因此相对路径将不起作用。
$absolut_path = "whatever your absolutpath is"; // maybe something like /var/www/html/
$log_name = $absolut_path."Cronjob". $date;