2010-04-21 66 views
1

我有以下代碼。如何在PHP中將多維數組作爲GET參數傳遞?

$connect = new Connection(); 
$response = $connect->putFile($fileName, $destination); 
header("Location: /test.php?response=" . $response); 

當我調用的文件頭和響應,該文件將停止執行,但我會在控制檯中沒有錯誤...我想,也許這陣需要編碼的網址是什麼?

如果是這樣的話?

謝謝

回答

2

如果$response是一個多維數組,你可能會票價最好serialize()荷蘭國際集團,並進行urlencode()荷蘭國際集團的結果。它增加了一些開銷,但不是太多。

但是,通過GET傳輸數據受到嚴重限制。數據量不應超過1-2千字節。來源:例如:here

如果您的數據可能超過此限制,則應考慮通過POST或在會話或其他類型的永久性存儲中(如果不可能)傳輸數據。

2

使用http_build_query()

http://us.php.net/http-build-query

+0

我想過使用http_build_query,但問題是這隻會將數組的每個值都作爲get參數。對於一維數組,這可能工作的很好,但不適用於多維數組,特別是如果響應每次都不相同,或者它包含多個像這樣的數組,則可以使用[0] => SimpleXMLElement Object () [1] = > SimpleXMLElement對象 () [2] => SimpleXMLElement對象 () [3] => SimpleXMLElement對象 () ... – Onema 2010-04-22 16:35:29

相關問題