0
$list = array('red', 'blue', 'white', 'green', 'black', 'orange', 'brown', 'violet', 'magenta'); 

var_dump($ list)を実行する前に、キー[3]を持つアイテムと、値が「orange」のアイテムを削除してから、それらのアイテムのないvar_dump($ list)を削除するにはどうすればよいですか?

(「if」ステートメントを使用する必要があります-学校の割り当て)

4

3 に答える 3

0

上記のforeachを使用して問題を解決することも、「if」ステートメントを使用するだけでよいという基準を使用することもできます。

上記の2つの答えを組み合わせると、より効率的な解決策が得られます。

unset($list[3]);
if (($key = array_search('orange', $list)) !== false)
    unset($list[$key]);
print_r($list);

unsetは、その要素を配列から削除するだけです。'orange'の$keyが存在する場合はそれを取得し、設定を解除して、最後に配列を出力します。

于 2012-10-04T19:42:39.110 に答える
0
foreach ($list as $key => &$value)
{
    if ($value == 'orange' || $key == 3)
    {
        unset($list[$key])
    }

    echo $value . "\n";
}

でも何を試しましたか?問題に取り組むことで、より優れたプログラマーになることができます。

于 2012-10-04T19:11:55.503 に答える
0

ループなし

    $list = array('red', 'blue', 'white', 'green', 'black', 'orange', 'brown', 'violet', 'magenta'); 
    unset($list[3]);
    unset($list[array_search('orange', $list)]);
    var_dump($list);
于 2012-10-04T19:14:49.550 に答える