我上个月使用了以下不同格式的内容,以便以后使用。
<?
date("m", strtotime("first day of -1 month"));
strtolower(date("M", strtotime("first day of -1 month")));
date("F", strtotime("first day of -1 month"));
?>
这应该在cron上运行,并将它们打印到外部文件中。当我手动运行这个程序时,它就像一个符咒,它会打印出正确的月份(七月)。然而,cronjob打印的是12月?(剧本将于8月上映)。
编辑:php版本为5.4
使用日期时间:
<?php
$dt = new DateTime('first day of last month');
echo $dt->format('F');
?>
在操作中查看
问题对我来说仍然没有解决,但这可能会帮助其他人。问题是,由于某种原因,cron使用5.2.17,而网站的其他部分则使用5.4。
感谢朗迪指出这可能是原因。主机仍然无法找到问题的来源,我会在找到任何信息后立即更新。
---更新,也许它能帮助未来的任何人:
这是我的主持人的回复,我认为它解决了问题:
您帐户上的cron作业都是从php开始的(php运行在您使用的任何环境中的默认php)
php/path/script.php
问题是php版本是由htaccess(在cron环境中不活动),因此需要使用不同的命令在那里选择php5.4。指向解释器的完整路径。
/usr/php/54/usr/bin/php-
如果您在要添加的cron上的帐户中也需要php.ini-c然后是php.ini 的路径
-c/path/public_html/php.ini
因此在cron中使用的命令是:
/usr/php/54/usr/bin/php-c/path/public_html/php.ini/path/public_html/script.php
尝试在php.ini 中的php中设置时区
您可以在这里查看php文档中的时区php 中的时区