微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP-如何替换阵列中的某些内容?

我需要格式化数组中的日期-但是数组中的日期没有作为日期时间保存在数据库中或类似的内容中..我从服务器上获取了日期并将其切出.

所以我需要使用preg_replace或str_replace

到目前为止,我尝试使用str_replace进行的操作:

    $reverse_date = str_replace( '[', '' ,$reverse_date);
    $reverse_date = str_replace( ']', '' ,$reverse_date);
    $reverse_date = str_replace( '/', '.' ,$reverse_date); 

但我不想为此使用三行.

如果我print_r这个,我会得到:2015年10月12日:01:10:43 0200

在它看起来像这样之前:[12 / Oct / 2015:00:37:29 0200]

所以没关系!但是我仍然不想为此使用三行,但是我不理解preg_replace语法

我想要以下输出

12.Oct.2015(space)01:10:43 +0200

解决方法:

如您所说,您正在从以下格式的数组中获取日期

[12/Oct/2015:00:37:29 +0200]

因此,除了使用str_replace或preg_replace之外,您还可以简单地使用PHP的DateTime :: createFromFormat函数,如下所示:

$date = DateTime::createFromFormat("[d/M/Y:H:i:s P]","[12/Oct/2015:00:37:29 +0200]");
echo $date->format('d.M.Y H:i:s P');//12.Oct.2015 00:37:29 +02:00

Demo

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐