php两个数组间如何替换? 数组A{1,2,4,4,2,4},数组B{a,b,c},想用数组B去替换掉数组A中的元素,1用a代替,2用b代替,4用c代替。即想达到下面这种效果A{a,b,c,c,b,c} 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <?php$A = array( 1, 2, 4, 4, 2, 4);$B = array( 'a', 'b', 'c');$r = array_combine( array_unique($A), $B);// $r = array( 1=>'a', 2=>'b', 4=>'c' );foreach( $A as &$value){ if( array_key_exists($value, $r) ) $value = $r[$value];}var_dump($A); 找到个更漂亮的方法,str_replace 实在是强大:$A = array( 1, 2, 4, 4, 2, 4);$B = array( 'a', 'b', 'c');var_dump( str_replace( array_unique($A) , $B, $A) ); A数组:aArray ( [0] => Array ( [0] => 16507 [1] => zhangsan ) [1] => Array ( [0] => 16508 [1] => lishi ) [2] => Array ( [0] => 16509 [1] => mazi ) ) B数组:Array ( [0] => Array ( [0] => 345 [1] => 张三 [2] =>ada ) [1] => Array ( [0] => 16508 [1] => 李四 [2] =>sss ) [2] => Array ( [0] => 16509 [1] => 麻子 [2] =>sfsf ) ) 得出这样的结果:c数组:Array ( [0] => Array ( [0] => 345 [1] => zhangsan [2] =>ada ) [1] => Array ( [0] => 16508 [1] => lishi [2] =>sss ) [2] => Array ( [0] => 16509 [1] => mazi [2] =>sfsf ) ) for($i=0;$i<count($b);$i++){ $b[$i][1]=$a[$i][1];}print_r($b); PHP+Apache不报错! Discuz论坛整合 装supesite时老是提示 服务器DNS有误 深圳·急招PHP程序员(请版本保留一天,多谢!) php高手快进来,有一事请教 字符截取问题 请教COOKIE保存密码问题 请教有关cookie的问题 我为什么返回不了这个递归的值呢?急救!!! 可不可以帮我看看这个,是数据库设计的问题 请敎NT4.0 OPTION PACK 与 NT4.0 SERICE PACK的区别? PHP中二维数组替换问题 高手帮看下,换了空间就出现以下问题,不知道如何解决
$A = array( 1, 2, 4, 4, 2, 4);
$B = array( 'a', 'b', 'c');
$r = array_combine( array_unique($A), $B);
// $r = array( 1=>'a', 2=>'b', 4=>'c' );
foreach( $A as &$value){
if( array_key_exists($value, $r) )
$value = $r[$value];
}
var_dump($A);
$A = array( 1, 2, 4, 4, 2, 4);
$B = array( 'a', 'b', 'c');
var_dump( str_replace( array_unique($A) , $B, $A) );
B数组:Array ( [0] => Array ( [0] => 345 [1] => 张三 [2] =>ada ) [1] => Array ( [0] => 16508 [1] => 李四 [2] =>sss ) [2] => Array ( [0] => 16509 [1] => 麻子 [2] =>sfsf ) )
得出这样的结果:
c数组:Array ( [0] => Array ( [0] => 345 [1] => zhangsan [2] =>ada ) [1] => Array ( [0] => 16508 [1] => lishi [2] =>sss ) [2] => Array ( [0] => 16509 [1] => mazi [2] =>sfsf ) )
$b[$i][1]=$a[$i][1];
}
print_r($b);