php给数组替换值的问题

搬瓦工机场JMS
  1. <?php
  2. $arr = array(  
  3.     0 => array(  
  4.         ‘id’    => 1,  
  5.         ‘name’  => ‘张三’,  
  6.     ),  
  7.     1 => array(  
  8.         ‘id’    => 2,  
  9.         ‘name’  => ‘李四’,  
  10.     ),  
  11.     2 => array(  
  12.         ‘id’    => 3,  
  13.         ‘name’  => ‘三’,  
  14.     ),  
  15.        3 => array(  
  16.         ‘id’    => 4,  
  17.         ‘name’  => ‘四’,  
  18.     ),  
  19.         4 => array(  
  20.         ‘id’    => 5,  
  21.         ‘name’  => ‘五’,  
  22.     ),  
  23.         5 => array(  
  24.         ‘id’    => 6,  
  25.         ‘name’  => ‘六’,  
  26.     ),  
  27. );  
  28. print_r($arr);
  29. ?>

复制代码

上面数组,想实现每隔2个就把name的值替换成“小明”。
就是1的李四变成小明,3的四也变成小明,5的六也变成小明,其他不变,无论有多少一直替换下去。
可能数组有几千行,求php大佬教教怎么写。
澳门网友:if $i%2==1  $arr[$i][name]=’小明’
澳门网友:

  1. foreach ($arr as $k=>$arr) {
  2. if ($i%2==1){
  3.                 $arr[$i][‘name’]=’小明’;
  4.                             }
  5.                     }

复制代码能帮忙写完整点吗,我搞不出来
新疆网友: 弄个循环,当i除以2的余数是1的时候改名字,,,有啥难的
福建网友:所以我上面弄的不对么,一个试题
宁夏网友:你的$arr里面,第一个是(0,Array),所以你的$k=0,$arr={id:xx,name:xx}(再说大数组是叫arr里面也叫arr不怕)?

  1. foreach ($arr as $k=>$v) {
  2.     if ($k%2) $v[‘name’]=’小明’;
  3. }

复制代码
你要清楚,你要操作谁,你弄出来的又是谁。
海南网友:你写的这个也能替换,我按照上面的提示把他替换了,但是不知道怎么输出原来的二维数组。

  1. for($i = 0 ; $i < 6 ; $i++){
  2.         if ($i%2==1){
  3.                 $a[] = $arr[$i][‘name’]=’小明’;
  4.        
  5. }
  6.          }
  7.                  print_r($a);

复制代码

黑龙江网友:

  1. for($i = 0 ; $i < 6 ; $i++){
  2.         if ($i%2==1){
  3.                 $a[] = $arr[$i][‘name’]=’小明’;
  4. }
  5. }
  6. print_r($a);

复制代码

我想输出原来的格式怎么弄,这样子出来的数组不是我要的了

未经允许不得转载:美国VPS_搬瓦工CN2 GIA VPS » php给数组替换值的问题

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏