2015-07-13 49 views
1

我與正在做一個HTTP GET請求到我的服務器web服務工作,併發送時間戳值如下:PHP轉換字符串轉換成時間戳

timeStamp=Mon+Jul+13+10%3A52%3A00+EST+2015 

然後我需要隱蔽成時間戳這我可以插入到我的數據庫中,但我無法提取有效的值。我使用的strtotime嘗試,例如:

echo(strtotime('Mon+Jul+13+10%3A52%3A00+EST+2015')); 

但這並不返回任何東西。本示例中的時間戳是2015年7月13日10:52:00。

尋找解決方案將此字符串轉換爲有效的時間戳。

+5

開始用urldecode() – 2015-07-13 01:15:13

+0

這是一個相當奇怪的時間格式。 – spenibus

回答

2

這應該適合你。您收到了一個urlencoded字符串,所以您需要首先將其反轉。

FIDDLE

<?php 
$timeStamp="Mon+Jul+13+10%3A52%3A00+EST+2015"; 
$timeStamp=urldecode($timeStamp); 
echo strtotime($timeStamp); 
?> 
0

你只需要更換的「+」和「%3A」與「」(空格)和「:」

$good = array(' ', ':'); 
$bad = array ('+', '%3A'); 

echo str_replace($bad, $good, 'Mon+Jul+13+10%3A52%3A00+EST+2015'); 

或者,如果你想要的數值時,改變最後一行此:

echo strtotime(str_replace($bad, $good, 'Mon+Jul+13+10%3A52%3A00+EST+2015'));