Heim  >  Artikel  >  Backend-Entwicklung  >  为何crontab -e不能执行fwrite写入文件?蹦溃了

为何crontab -e不能执行fwrite写入文件?蹦溃了

WBOY
WBOYOriginal
2016-06-13 11:21:22962Durchsuche

为什么crontab -e不能执行fwrite写入文件?蹦溃了。

function Write_FileFun_new($filename,$filedir, $htmldata = '') {<br />	if(!is_dir($filedir)) {<br />		mkdir($filedir, 0777);<br />	}<br />	$htmlfile = $filedir.$filename;<br />	if($fp = fopen($htmlfile, 'wbt')) {<br />		fwrite($fp,$htmldata);<br />		fclose($fp);<br />	} else {<br />		echo "<center><p>Can not write to files, please check directory $htmldir.</p></center>";<br />		exit;<br />	}<br />}<br />$testnum_temp="<?php \$testnum = ".(intval($testnum)+1)."; ?>";<br />Write_FileFun_new("test.php","inc/", $testnum_temp);


用浏览器运行页面是正常写入的,
在crontab -e中设置定时每分钟执行一次没有写入文件,crontab -e定时执行是正常,可以每分钟执行一次。
为什么会这样,就差这一个地方了,其它程序都正常执行,就差这个不能写入。为什么啊?


------解决方案--------------------
inc/ 是相对路径
请先弄清楚是相对谁的
------解决方案--------------------
看看日志,有什么警告信息吗?
------解决方案--------------------
你把crontab里面的命令直接在命令行运行一下看看什么反应
------解决方案--------------------
写一个sh,处理好权限 在这个文件里调用/usr/bin/php /var/www/html/write.php 最后在crontab 使用root 身份调用..
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn