php - 未捕获的异常 'Exception' 消息为“DateTime::__construct():

标签 php datetime

我在输出在我的 PHP 文件中创建的日期时遇到问题。

我一直在关注如何制作一个真正的 Basic-CMS 平台的教程,以帮助我了解 databasesPHP 的一些基础知识,一切都已经完成一切顺利,直到我尝试输出页面的创建日期。

这是我得到的错误

Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct(): It is not safe to rely on the system's timezone settings. 
You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of
those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone.' in 
C:\MAMP\htdocs\basic-cms\page.php:22 Stack trace: #0 C:\MAMP\htdocs\basic-cms\page.php(22): DateTime->__construct('2016-02-17 10:3...') #1 {main} thrown in C:\MAMP\htdocs\basic-cms\page.php on line 22

现在,当我删除 page.php 中的第 22 行时,它会输出数据库中的完整日期,即 2016-02-17 10:38:05 但是我正在尝试对其进行格式化以显示日期,例如 jS M, Y (17th Feb 2016)

这是我的page.php 文件中的代码

if ( $page ) {
    $page['created'] = new DateTime( $page['created'] );

    if ( $page['updated'] ) {
        $page['updated'] = new DateTime( $page['created'] );
    }
}

然后在我显示这个的 show.php 中,我有这段代码来格式化日期。

Created on <?php echo $page['created']->format('jS M, Y'); ?>

现在从我的 show.php 中删除它不会做任何事情,因为那不是包含错误的地方 - 但我想我会向你们展示我正在努力实现的目标。

就像我说的,这是一个非常基本的 CMS 网站,我是通过关注 tutorial on YouTube 创建的我已经准确地复制了他的代码,他没有出错,所以我确定这一定是我找不到的错字。

最佳答案

这是因为php配置中没有设置时区。

将以下代码行添加到 php.ini 文件的顶部

date.timezone = "US/Central"

并重启网络服务器

您也可以使用以下函数通过 php 脚本设置它:

date_default_timezone_set('America/Los_Angeles');

不要忘记重新加载/重启 apache 服务器

关于php - 未捕获的异常 'Exception' 消息为“DateTime::__construct():,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35455315/

相关文章:

java - 如何将我的时间增加一个小时

python - Pandas :添加具有最新值的列

java - 使用 Java Stream 计算项目列表中日期的出现次数

c# - 动态延迟 IObservable 值的延迟函数

php - 将 MYSQL 数据库从一台服务器导入到新服务器

php - 拉拉维尔 5 : cascade soft delete

php - 在终端中工作时,php 脚本中的套接字连接失败

php - 获取 Doctrine 2 中的相关条目

php - 每次在我们的网站上抛出 PHP 错误时如何接收电子邮件

ios - 如何在 iPhone 日历上创建提醒和存储提醒