如何在PHP中将多维数组作为GET参数传递?

时间:2010-04-21 19:44:44

标签: php arrays header get multidimensional-array

我有以下代码。

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

当我使用响应调用标头时,文件将停止执行,但我在控制台中没有错误...我想也许这个数组需要为url编码?

如果是这样的话?

谢谢

2 个答案:

答案 0 :(得分:2)

使用http_build_query()

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

答案 1 :(得分:2)

如果$response是一个多维数组,那么通过serialize()和urlencode()结果可以获得最佳效果。它增加了一些开销,但不是太多。

然而,通过GET传输数据受到严重限制。数据量不应超过1-2千字节。来源:例如here

如果您的数据可能超出该限制,您应该考虑通过POST传输数据,或者如果不可能,则在会话或其他类型的持久存储中传输数据。