php解决crontab定时任务不能写入文件问题的方法分析


Posted in PHP onSeptember 16, 2019

本文实例讲述了php解决crontab定时任务不能写入文件问题的方法。分享给大家供大家参考,具体如下:

今天使用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程序设计有所帮助。

PHP 相关文章推荐
一些PHP写的小东西
Dec 06 PHP
推荐一篇入门级的Class文章
Mar 19 PHP
php zend 相对路径问题
Jan 12 PHP
ubuntu 编译安装php 5.3.3+memcache的方法
Aug 05 PHP
对PHP新手的一些建议(PHP学习经验总结)
Aug 20 PHP
php判断访问IP的方法
Jun 19 PHP
php封装的page分页类完整实例
Oct 18 PHP
php封装json通信接口详解及实例
Mar 07 PHP
Laravel5.* 打印出执行的sql语句的方法
Jul 24 PHP
关于php开启错误提示的总结
Sep 24 PHP
PHP超全局变量实现原理及代码解析
Sep 01 PHP
php慢查询日志和错误日志使用详解
Feb 27 PHP
PHP实现一个限制实例化次数的类示例
Sep 16 #PHP
thinkPHP5框架路由常用知识点汇总
Sep 15 #PHP
php项目中类的自动加载实例讲解
Sep 12 #PHP
php+jQuery ajax实现的实时刷新显示数据功能示例
Sep 12 #PHP
php创建多级目录与级联删除文件的方法示例
Sep 12 #PHP
PHP实现的文件浏览器功能简单示例
Sep 12 #PHP
PHP通过文件保存和更新信息的方法分析
Sep 12 #PHP
You might like
PHP base64编码后解码乱码的解决办法
2014/06/19 PHP
将CMYK颜色值和RGB颜色相互转换的PHP代码
2014/07/28 PHP
Yii2创建多界面主题(Theme)的方法
2016/10/08 PHP
HTML TO JavaScript 转换
2006/06/26 Javascript
javascript 字符串连接的性能问题(多浏览器)
2008/11/18 Javascript
jquery ajax同步异步的执行最终解决方案
2013/04/26 Javascript
js解析json读取List中的实体对象示例
2014/03/11 Javascript
node.js中的http.response.setHeader方法使用说明
2014/12/14 Javascript
js事件监听器用法实例详解
2015/06/01 Javascript
JavaScript中的对象与JSON
2015/07/03 Javascript
jQuery实现Select下拉列表进行状态选择功能
2017/03/30 jQuery
Node.js编写CLI的实例详解
2017/05/17 Javascript
JavaScript实现获取用户单击body中所有A标签内容的方法
2017/06/05 Javascript
[57:16]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS VG第二场
2014/05/26 DOTA
[02:28]DOTA2亚洲邀请赛 LGD战队巡礼
2015/02/03 DOTA
Python RuntimeError: thread.__init__() not called解决方法
2015/04/28 Python
python采集百度百科的方法
2015/06/05 Python
Python中属性和描述符的正确使用
2016/08/23 Python
Python中字符串的修改及传参详解
2016/11/30 Python
python查看列的唯一值方法
2018/07/17 Python
Python3爬虫学习入门教程
2018/12/11 Python
Django对数据库进行添加与更新的例子
2019/07/12 Python
opencv3/C++实现视频读取、视频写入
2019/12/11 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
2020/06/24 Python
Python 实现键盘鼠标按键模拟
2020/11/18 Python
使用CSS3来实现滚动视差效果的教程
2015/08/24 HTML / CSS
国际奢侈品品牌童装购物网站:Designer Childrenswear
2019/05/08 全球购物
Java中实现多态的机制是什么?
2014/12/07 面试题
预备党员政审材料
2014/02/04 职场文书
工作作风承诺书
2014/08/30 职场文书
遗失说明具结保证书
2015/02/26 职场文书
大学生就业推荐表自我评价
2015/03/02 职场文书
iPhone13 Pro外观确定,升级4800万镜头,4月20日发新品
2021/04/15 数码科技
mysq启动失败问题及场景分析
2021/07/15 MySQL
Python爬虫中urllib3与urllib的区别是什么
2021/07/21 Python
Win10多屏显示如何设置?Win10电脑多屏显示设置操作方法
2022/07/07 数码科技