我们在PHP 5.3中使用PHP的date(“ c”)格式遇到了意外的问题。
该格式返回的值与MySQL 5.7及更高版本中的datetime列类型相反。
在尝试升级MySQL安装并开始从数据库中获取错误之前,我们从未意识到我们容易受到此问题的攻击。</ p>
在我们的PHP代码中,对date(“ c”)的使用几乎无处不在,因此我们面临一个难题,我的团队正在寻求我解决。
我想重新定义PHP如何为服务器上运行的所有脚本永久返回date(“ c”)。有没有办法分支该功能以重新定义此预设?
预先感谢您的建议。
答案 0 :(得分:0)
如其他注释中所述,PHP 5.3是extremely out of date and should no longer be used。在撰写此评论之时,支持已在5年前结束。
我建议尽快升级您的PHP版本,以减少出现安全问题的机会。
关于您的问题,我认为与其重新定义常量(没有自定义PHP版本是不可能的),而是在整个代码库中进行正则表达式查找和替换会更有意义。
只有少数函数接受日期格式字符串,因此自动替换它们应该不太困难。