从PHP中的数组数组中提取值

时间:2016-01-02 17:12:58

标签: php jquery arrays json

我有一个表单,我将其序列化以将其发送到PHP(AJAX):

var dataString = $('#form_filtre').serializeArray();

我想在PHP中提取 值,其中名称为" ou" :

    array(1) {
  ["form_serialize"]=>
  array(6) {
    [0]=>
    array(2) {
      ["name"]=>
      string(3) "ctr"
      ["value"]=>
      string(6) "maison"
    }
    [1]=>
    array(2) {
      ["name"]=>
      string(6) "action"
      ["value"]=>
      string(17) "readHomesLocation"
    }
    [2]=>
    array(2) {
      ["name"]=>
      string(2) "ou"
      ["value"]=>
      string(1) "8"
    }
    [3]=>
    array(2) {
      ["name"]=>
      string(2) "ou"
      ["value"]=>
      string(1) "6"
    }
    [4]=>
    array(2) {
      ["name"]=>
      string(5) "quand"
      ["value"]=>
      string(0) ""
    }
    [5]=>
    array(2) {
      ["name"]=>
      string(3) "max"
      ["value"]=>
      string(3) "500"
    }
  }
}

我想提取6和8。

问题在于,我事先并不知道有多少" ou"我会的。

它可以是0到n

1 个答案:

答案 0 :(得分:1)

似乎一个简单的方法就是让PHP反序列化数组,然后用这样的foreach循环遍历它:

foreach($array as $index => $subArray) {
    foreach($subArray as $key => $val) {
        if ($key == "ou") {
            $ouArray[$index] = $val;
        }
    }
} 

(其中$ array,显然是你的非序列化数组)

如果你不关心你属于哪个元素,你也可以使用$ouArray[] = $val