日期:2014-05-17  浏览次数:20397 次

数组问题 求大侠给个方法
$a = Array
(
    [0] => 3
    [1] => 1
    [2] => 2
    [3] => 7
)

$b = Array
(
    [1] => Emross War
    [2] => Roman Empire
    [3] => Avalon Wars
    [7] => 掌上三国
    [9] => 罗马(91)
    [10] => Space Dominions
    [11] => 腾讯三国
    [12] => Vampire War
    [15] => 三国英雄传
    [17] => 掌上水浒
)
$a数组中的值是$b 的键值

那我如何得到
$c = Array
(
    [1] => Emross War
    [2] => Roman Empire
    [3] => Avalon Wars
    [7] => 掌上三国
)

求大侠给个答案
php 数组

------解决方案--------------------
$a = Array
(
    0 => 3,
    1 => 1,
    2 => 2,
    3 => 7
);

$b = Array
(
    1 => 'Emross War',
    2 => 'Roman Empire',
    3 => 'Avalon Wars',
    7 => '掌上三国',
    9 => '罗马(91)',
    10 =>'Space Dominions',
    11 =>'腾讯三国',
    12 =>'Vampire War',
    15 =>'三国英雄传',
    17 =>'掌上水浒'
);
foreach($a as $k){
     $c[$k]=$b[$k];
}
ksort($c);
print_r($c);

------解决方案--------------------
sort($a); // 将数组 $a 按值升序排列
$c = array(); //定义一个结果数组
foreach($a as $k) { // 依次从数组 $b 中取值
  $c[$k] = $b[$k];
}

------解决方案--------------------


$a = Array
(
    '0' => 3,
    '1' => 1,
    '2' => 2,
    '3' => 7
);

$b = Array
(
    '1' => 'Emross War',
    '2' => 'Roman Empire',
    '3' => 'Avalon Wars',
    '7' => '掌上三国',
    '9' => '罗马(91)',
    '10' => 'Space Dominions',
    '11' => '腾讯三国',
    '12' => 'Vampire War',
    '15' => '三国英雄传',
    '17' => '掌上水浒',
);
$c = array_flip($a); //array_flip -- 交换数组中的键和值