我有一个初始数组:
array
( [no] => array
(
[<30] => 3
[>30] => 5
[>50] => 2
)
[yes] => array
(
[<30] => 4
[>30] => 2
[>50] => 7
)
[maybe] => array
(
[<30] => 7
[>30] => 9
[>50] => 10
)
)
是否可以将上述数组拆分为多个数组变量。如:
$yes = array(3,5,2);
$no = array(4,2,7);
$maybe = array(7,9,10);
答案 0 :(得分:1)
$yes = $array['yes'];
$no = $array['no'];
$maybe = $array['maybe'];
这就是它的全部内容。
答案 1 :(得分:1)
你可以试试这个。
$result = array();
foreach($data as $response)
$result[] = array_values($response);
list($no, $yes, $maybe) = $result;
$data
是您问题中显示的数组。
然后,您可以访问$no
,$yes
和$maybe
中的3个值,假设$data
的顺序与该订单相对应。
答案 2 :(得分:1)
假设内部数组以相同的顺序填充相同的键,看起来您想要查看array_values:http://php.net/manual/en/function.array-values.php
从那以后,它应该很简单:
$yes = array_values( $initial_array['yes'] );
$no = array_values( $initial_array['no'] );
$maybe = array_values( $initial_array['maybe'] );
答案 3 :(得分:0)
此问题的所有其他解决方案取决于密钥的名称,如果密钥从yes
更改为YES
,则解决方案均无效,以下是动态解决方案,也很简单。
$array = array("yes"=>array(1,2,3,4),"no"=>array(3,45,6,),"maybe"=>array(7,8,9));
foreach($array as $key=>$val){
$key = strtolower($key);
$$key = $val;
}
print_r($yes);
echo "<br>";
print_r($no);
echo "<br>";
print_r($maybe);