2014-12-04 253 views
-1

我正在使用的datepicker將日期傳遞給表單提交中的php腳本。從URL參數中讀取值,其中斜槓用PHP中的%2F表示

的URL參數如下 - DATEPICKER1 = 12%2F09%2F2014

我可以12%2F09%2F2014存儲在變量中。

$datepicker1 = $_GET['datepicker1']; 

我也有即3個其他變量: $日 $每月 $一年

如何從變量$ DATEPICKER1提取它們單獨日,月,年增加各自的變量?

+0

你確定'$ datepicker1'包含'%2F'序列嗎?它們出現在URL中,因爲'/'是URL中的一個特殊字符,但是當'$ _GET []'被填充時它們應該被解碼。使用'DateTime :: createFromFormat('d/m/Y',$ datepicker1);'來處理這個值。 – axiac 2014-12-04 12:11:07

+0

是的,我正在使用JQuery datepicker。我可以urldecode變量獲得12/09/2014。但是,那麼,我如何獲得12美元日,09美元到$月,2014年到$年? – 2014-12-04 12:12:40

回答

1

試試這個:

$datepicker1 = "12%2F09%2F2014"; 
$val = urldecode($datepicker1); 
$array = explode('/', $val); 
print_r($array); 

的$數組變量是你的結果。 現在你可以數組賦值到$日,月$,$ year變量是這樣的:

$day = $array[0]; 
$month = $array[1]; 
$year = $array[2]; 

現在你可以將其存儲到數據庫中。 我希望這會對你有幫助。 謝謝

+0

有用和有用。謝謝。也嘗試過substr,它也起作用。 – 2014-12-04 12:19:23

+0

是的,你可以使用substr來做到這一點。 – Yash 2014-12-04 12:20:34

0

使用這種urldecode()函數

$date = urldecode("12%2F09%2F2014"); 

$year = date('Y', strtotime($date)); 
$mon = date('m', strtotime($date)); 
$day = date('d', strtotime($date)); 
+0

一旦我有12/09/2014從解碼,我如何添加12美元日,09到$月,2014年到$年?是否可以使用修剪?我正在尋找最好的解決方案來做到這一點。 – 2014-12-04 12:11:27

0

您可以使用sbstr()來獲取值。

假設日期$date=substr($datepicker1,0,2);

同樣別人.. :)

+0

是的,這個效果很好。謝謝。 – 2014-12-04 12:19:41

-1
$date= urldecode("12%2F09%2F2014"); 
echo substr($date, 0, 2); 
echo "<br>"; 

echo substr($date, 3, 2); 
echo "<br>"; 

echo substr($date, 6, 4); 
echo "<br>"; 

我嘗試了上面,它似乎爲我工作的罰款。

而不是回聲 - 將這些添加到變量。

由Yash提供的陣列解決方案也有效。