从json响应中提取值

时间:2014-03-13 14:31:48

标签: php regex web-scraping

我正在接受像这样的json回复

"created_at"
        ]=>string(30)"Thu Mar 13 14:24:13 +0000 2014"

我想分别提取日期,时间,月份。是否可以通过正则表达式?

更新:

我希望每个日期,时间月份都是单独的变量。

2 个答案:

答案 0 :(得分:1)

如果没有测试,您可以执行类似

的操作
$response = json_decode(/* json string */);

$dt new DateTime(response->created_at);

$date = $dt->format('m/d/Y');
$time = $dt->format('H:i:s');

$month = $dt->format('m');

这是你的json有效

答案 1 :(得分:1)

尝试使用DateTime的createFromFormat方法。正则表达式会表现得更好,但这更容易阅读和理解。

$created_at = $thing->created_at;
$date = DateTime::createFromFormat('D M d H:m:s O Y', $created_at); // this might be overly verbose

echo $date->format('Y-m-d'); // 2014-03-13
echo $date->format('H:m:s'); // 14:24:13

查看here以格式化日期。