php - 如何在 URL 中传递多维关联数组

标签 php arrays multidimensional-array get associative-array

我已经在谷歌上搜索了好几个小时了,但我还是搞不明白。我有一个像这样的多维关联数组:

$mArray = array(
   array("m" => "0"),
   array("m" => "1"),
   array("m" => "1")
   );

我想使用 PHP GET 请求创建数组:

mywebsite.com/file.php?.......what do I put here?.....

最佳答案

您需要使用像这样的数组访问符号

mywebsite.com/file.php?item[0][m]=0&item[1][m]=1&item[2][m]=1

使用嵌套循环构建此字符串会很简单 - 不要忘记对值进行 URL 编码

$query_string = '';
foreach($mArray as $key => $array) {
    foreach($array as $k => $v) {
        $query_string .= 'item[' . urlencode($key) . '][' . urlencode($k) . ']=' . urlencode($v) . '&';
    }
}
$query_string = substr($query_string, 0, 1); // trim extra &

如果您需要处理任意维度的数组,显然可以将其修改为一个可以递归调用以达到尽可能多的级别的函数。

关于php - 如何在 URL 中传递多维关联数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17953468/

相关文章:

c++ - 使用数组作为函数输入参数

ruby-on-rails - 如何验证在 rails 中包含数组内容

java - java中如何识别多维对象的实例?

Java,将小型二维数组与较大二维数组中的每个可能的迭代进行比较

javascript - 从动态选择框构造 mySQL 查询

对象上的 PHP array_filter

php - html和主流浏览器支持的不同视频格式

php - Codeigniter Right Join with Where 条件未给出结果

javascript - JSON数组删除语音标记?

c#多维数组转换