Cron作业PHP脚本执行时间报告

Cron作业PHP脚本执行时间报告,php,cron,Php,Cron,我的问题很简单:我想知道执行一个PHP脚本需要多长时间。除此之外,我还通过cron执行它。现在,我可以通过PHP代码本身做一些事情来获取执行时间的开始/结束,但是我想知道是否可以通过cron命令添加一些东西,以毫秒为单位发送电子邮件给我 目前我正在使用: /usr/bin/php -q httpsdocs/folder/script.php > /dev/null 2>&1 它运行我的脚本并停止通过电子邮件发送给我的所有错误/输出。我是否可以更改上面的内容,以便以某种方式将

我的问题很简单:我想知道执行一个PHP脚本需要多长时间。除此之外,我还通过cron执行它。现在,我可以通过PHP代码本身做一些事情来获取执行时间的开始/结束,但是我想知道是否可以通过cron命令添加一些东西,以毫秒为单位发送电子邮件给我

目前我正在使用:

/usr/bin/php -q httpsdocs/folder/script.php > /dev/null 2>&1
它运行我的脚本并停止通过电子邮件发送给我的所有错误/输出。我是否可以更改上面的内容,以便以某种方式将执行时间通过电子邮件发送给我


谢谢

您可以像这样使用
time
命令:

/usr/bin/time /usr/bin/php -q httpsdocs/folder/script.php > /var/log/crontiming

:-)

通过给定的脚本,您可以更改cron作业的执行时间

$aCronList = array();
$result = -1;
exec('crontab -l', $aCronList, $result);
foreach($aCronList AS $item)
{
    // Find what you want, replace the times
}

$sCronList = implode(PHP_EOL, $aCronList);
exec('crontab < ' . $sCronList); 
$aCronList=array();
$result=-1;
exec('crontab-l',$aCronList,$result);
foreach($aCronList作为$item)
{
//找到你想要的,替换时间
}
$sCronList=内爆(PHP_EOL,$aCronList);
exec('crontab<'.$sCronList);

向我发送一封空电子邮件:)删除
/dev/null 2>&1
部分。你是对的,尽管我只是删除了脚本路径之后的所有内容。它默认为mailto,正如ncuesta所说,好消息是我有一些ms计时。。坏消息是它们太小了,不可能是正确的。我在/var/log/crontiming上的权限也被拒绝运行cron的用户是否有权在
/var/log/crontiming
上进行写操作?我可以通过电子邮件而不是日志发送它吗?crontab文件中有一个
MAILTO
变量,因此每次运行时它都会自动向该地址发送电子邮件。引用:除了LOGNAME、HOME和SHELL之外,cron还将查看MAILTO,看它是否有任何理由因为在“this”crontab中运行命令而发送邮件。如果定义了MAILTO(非空),则将邮件发送给这样命名的用户。
$aCronList = array();
$result = -1;
exec('crontab -l', $aCronList, $result);
foreach($aCronList AS $item)
{
    // Find what you want, replace the times
}

$sCronList = implode(PHP_EOL, $aCronList);
exec('crontab < ' . $sCronList);