2011-03-09 296 views
0

我正在使用PayPal訂閱IPN。自定義變量我發送給貝寶是這樣的:PHP爆炸函數

5 | 3

當貝發回給我,這是url編碼,看起來像這樣:

5%7C3

如果我想使用爆炸功能,我可以執行以下操作嗎?

$custom = $_POST['custom']; 
if(isset($custom)) 
{ 
list($id_1, $id_2) = explode('|', $custom); 
} 

還是這樣?

$custom = $_POST['custom']; 
if(isset($custom)) 
{ 
list($id_1, $id_2) = explode('%7C', $custom); 
} 

我該如何正確地做到這一點?謝謝!

+2

如果被髮送一切恢復編碼,運行' urldecode()'在它們爆炸之前。 – BoltClock 2011-03-09 05:27:51

回答

1

u可以使用這種方法

$output = explode('|', urldecode($_POST['custom'])); 
+0

你的意思是我不必urldecode它? PHP自動執行它?哎呀,沒關係我沒有正確閱讀。 – saburius 2011-03-09 05:35:16

+0

@saburius我更新了我的答案,請看看 – diEcho 2011-03-09 05:37:42

0

嘗試使用urldecode

echo urldecode('5%7C3'); 

這種用法explode功能後。

0

你可以先讓它通過urldecode(),然後通過絕對值分隔符爆發,

$custom = urldecode($_POST['custom']); 
if($custom!="") 
{ 
list($id_1, $id_2) = explode('|', $custom); 
}