PHP从另一个数组中替换数组值

时间:2018-02-10 04:17:44

标签: php

任何人都可以向我提出一个建议,说明我的代码为什么不起作用?我想要完成的是if $value1 == '0'是真的,然后连接与$stdArray2.中的键顺序对应的值/文本我不确定这是否是最佳或正确的方法。有没有更好的办法?这段代码似乎很笨拙,但由于我的编码技巧非常糟糕,因此无法抱怨。

我的PHP

$stdArray1 ['1']  = $orange;
$stdArray1 ['2']  = $apple;
$stdArray1 ['3']  = $peach;
$stdArray1 ['4']  = $berry;
$stdArray2 ['1']  = 'Flordia';
$stdArray2 ['2']  = 'Washington';
$stdArray2 ['3']  = 'Georgia';
$stdArray2 ['4']  = 'Oregon';

foreach($stdArray1 as $value1){
  if($value1 == '0'){
    foreach($stdArray2 as $value2){
      $fruit .= $value2', ';
    }
  }
}

2 个答案:

答案 0 :(得分:1)

您的代码应该是这样的:

foreach($stdArray1 as $value1){
  if($value1 == '0'){
    foreach($stdArray2 as $value2){
      $fruit .= $value2.', ';
    }
  }
}

你在foreach循环中缺少.

答案 1 :(得分:1)

如果您只想要第二个数组中的相应值,则不应使用第二个循环,只需使用数组索引。

foreach ($stdArray1 as $index => $value) {
    if ($value == '0') {
        $fruit .= $stdArray2[$index] . ", ";
    }
}

DEMO