尝试显示图像取决于foreach循环中的值,并且它第二次正确回声,但不是第一次回显。很奇怪,如果我回显它确实显示它的值,但不是图像中的图像一个开关声明......这是代码:
foreach ($myarray as $value ){
echo $value;
switch($value){
case 'value1':
echo '<img src="something.jpg" />';
break;
case 'value2':
echo '<img src="something-2.jpg" />';
break;
}
}
所以如果一个人同时拥有“value1”和“value2”,那么它会回显这两个值,但只回显value2 image..help?
答案 0 :(得分:1)
我认为你只看到第二个值,因为它覆盖了第一个值。 从理论上讲,你的情况应该只有1:1匹配。
确保您的值类型正确无误。含义“1”(字符串)和1(数字)可能会以不同方式中断。
此外,如果您有时间可以获得两个结果,您可以随时翻倍。
switch ($value) {
case 'FOO':
case 'FOOBAR':
echo '<img >';
break;
case 'BAR':
echo '<img>';
break;
default:
// No match found.
break;
}
然而,让1和2在同一个案例中没有多大意义。否则,切换的重点是什么 - 所有值都会产生相同的结果。
希望这有帮助!