您好,登录后才能下订单哦!
php中crontab定时任务不能写入文件如何解决?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
crontab.php
<?php error_reporting(0); $time = date("Y-m-d h:i:s",time()); file_put_contents($dir."/crontab.txt","[$time]\n",FILE_APPEND);
crontab -e
*/1 * * * * /opt/php/bin/php /var/www/koastal/crontab.php
我直接运行php命令也是可以的。
/opt/php/bin/php /var/www/koastal/crontab.php
然后我把写入文件的命令改成输出,然后存到一个文件里面就可以了。
crontab.php
<?php error_reporting(0); $time = date("Y-m-d h:i:s",time()); echo $time;
crontab -e
*/1 * * * * /opt/php/bin/php /var/www/koastal/crontab.php >> /var/www/koastal/log.txt
这说明crontab命令是正常的,php也只正常执行的,于是我开始怀疑人生。
网上查了查资料发现,原来是crontab命令的php是执行在cli模式下的,不能正确识别相对路径。
我之所以直接运行php命令没有报错是因为我设置了error_reporting(0);
所以我们给它绝对路径就好了,如下:
<?php error_reporting(0); $dir = __DIR__; $time = date("Y-m-d h:i:s",time()); file_put_contents($dir."/crontab.txt","[$time]\n",FILE_APPEND);
关于php中crontab定时任务不能写入文件如何解决问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。