0

ループでループアウトされたアイテムの色を切り替えるソリューションを探していforeachます。すべてのアイテムは、色の値に基づいて異なる色にする必要があります。

青色は 2 回、黄色は 5 回連続して投与する必要があります。

$colors = array
  (
  array("blue", 2),
  array("yellow", 5),
  array("green",4)
  );

foreach($colors as $color){
    foreach($color as $item){
        $colorClass = $item;
        echo $colorClass;
        //outputs blue8yellow12green16

    }
}

出力を次のようにしたい:

blue
blue
yellow
yellow
yellow
yellow
yellow
green
green
green
green

これを行う方法はありますか?私はphpまたはjavascript/jqueryのいずれかでこれを解決するために開いています

4

3 に答える 3

0

文字列のシーケンスを出力したいだけの場合は、次を使用しますstring_repeat

foreach($colors as $color){
    echo str_repeat($color[0] . "\n", $color[1]);
}

色の名前で何かをしたい場合は、forループに固執することができます:

foreach($colors as $color){

    for($i = 0; $i<$color[1]; $i++){

        // do stuff with $color[0] here
        // this loop will go on for $color[1] times

    }

}
于 2013-03-31T10:55:11.243 に答える