PHP ob_* from cronjob?
当它作为cronjob运行时,我遇到了
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <?php function getLayout($file, $extract=array()) { if (is_file($file)) { if (count($extract) > 0) { extract($extract); } ob_start(); include $file; $contents = ob_get_contents(); ob_end_clean(); return $contents; } return false; } file_put_contents('somecachefile.html', getLayout('somefile.php', array('var1'=>$val1, 'var2'=>$val2))); ?> |
cronjob的设置如下:(每分钟运行一次)
1 | * * * * * /usr/bin/php /path/to/cron.php > /dev/null |
在这种情况下,除了cron真正运行以外,什么都没有发生。
如果我从命令行调用此(
有什么想法我犯错了吗?
感谢您的预先帮助!
您可能需要在" somefile.php"上使用绝对路径。它可能是在cron的pwd中创建的。或者,您可以在cron语句的脚本开头处执行chdir。