2015-12-22 148 views
0

我有一个像下面更改索引数组关联数组

1 => "Los Angeles" 
2 => "California" 
3 => "St. Louis" 
4 => "Missouri" 
5 => "Boston" 
6 => "Massachusetts" 

我想将其更改为一个关联数组,所以每个奇数项指标是城市和每个偶数项将使用状态的数组。 让我知道这是否合理。

+0

请提供为例结果数组e。 – sectus

回答

0

,你想有关联数组,但你希望所有的索引是相同的,这是不可能的。超出你的问题的线条,如果我理解正确,数组中的所有奇数项都是城市,偶数项是状态,你想分开它?然后尝试下面:

<?php 
$scrambled_city_state = array(
    1 => "Los Angeles", 
    2 => "California", 
    3 => "St. Louis", 
    4 => "Missouri", 
    5 => "Boston", 
    6 => "Massachusetts" 
); 
$cities = array(); 
$states = array(); 
foreach ($scrambled_city_state as $key => $city_state) { 
    if ($key % 2 == 0) { 

     // state 
     $states[] = $city_state; 
    } 
    else { 

     // city 
     $cities[] = $city_state; 
    } 
} 
var_dump($cities, $states); 
?> 

输出:

array(3) { 
    [0]=> 
    string(11) "Los Angeles" 
    [1]=> 
    string(9) "St. Louis" 
    [2]=> 
    string(6) "Boston" 
} 
array(3) { 
    [0]=> 
    string(10) "California" 
    [1]=> 
    string(8) "Missouri" 
    [2]=> 
    string(13) "Massachusetts" 
} 
+0

谢谢,这正是我需要的! – user2648781

0

数组键不能具有相同的名称。他们必须是“city1”,“城2”等基于你把标题

1

该解决方案将你

<?php 
    $myarray = array("1" => "Los Angeles" , 
"2" => "California" , 
"3" => "St. Louis" , 
"4" => "Missouri" , 
"5" => "Boston" , 
"6" => "Massachusetts"); 
    var_dump($myarray); 
?> 

RESULT阵列(6){[1] =>串(11)的工作“洛杉矶“[2] =>字符串(10)”加利福尼亚“[3] =>字符串(9)”圣路易斯“[4] =>字符串(8)”密苏里“[5] =>字符串(6) “波士顿”[6] =>串(13) “马萨诸塞”}