2

サンプルコードは次のとおりです。

$array1 = array("Name1", "Name2", "Name3");
$array2 = array("Name2" => "NameX");
foreach($array1 as $val) 
{
    echo $val."<br/>";
}

これにより、次のように出力されます。Name1 Name2 Name3

代わりにこれを出力するにはどうすればよいですか:Name1 NameX Name3

YogeshSutharは正しい回答を提出しました:

 $array1 = array("Name1", "Name2", "Name3");

$array2 = array("Name2" => "NameX");
foreach($array1 as $val) {
    if (array_key_exists($val, $array2)) {
            echo $array2[$val];
    }
    else {
            echo $val."<br/>";
    }
}
4

4 に答える 4

3

あなたの質問を文字通り受け取り、あなたが持っているコードを使用します。

$array1 = array("Name1", "Name2", "Name3");
$array2 = array("Name2" => "NameX");
foreach($array1 as $val) {
    if (array_key_exists($val, $array2)) {
            echo $array2[$val]."<br/>";
    }
    else {
            echo $val."<br/>";
    }
}
于 2013-01-25T04:18:31.880 に答える
1

array_replace()を探していると思います

<?php
$base = array("orange", "banana", "apple", "raspberry");
$replacements = array(0 => "pineapple", 4 => "cherry");
$replacements2 = array(0 => "grape");

$basket = array_replace($base, $replacements, $replacements2);
print_r($basket);
?>

次のように出力されます。

Array
(
    [0] => grape
    [1] => banana
    [2] => apple
    [3] => raspberry
    [4] => cherry
)

PHP:array_replace

于 2013-01-25T04:18:01.707 に答える
1
foreach ($a1 as $v) {
  if (isset($a2[v]) && !empty($a2[$v]))
    echo "{$a2[$val]}<br />";
  else
    echo "$val<br />";
}
于 2013-01-25T04:18:04.127 に答える
0
    $array1 = array("Name1", "Name2", "Name3");
enter code here$array2 = array("Name2" => "NameX");

//Loop tthrough replacement array 
foreach($array2 as $key => $word){
    //Loop through all the replacements
    foreach($array1 as $array1key => $item){

        if($item == $key){
        //if match found replace
        $array1[$array1key] = $word;

        }
    }   
}

print_r($array1);
于 2013-01-25T04:34:02.283 に答える