我有这段代码
<?php for ($i=0;$i<sizeof($list["tags"]); $i++) {
if ($list["tags"][$i]["title"]=='list') {
echo 'Not correct type';
}
if ($list["tags"][$i]["title"]!='list') {
?>
<a href="...">Text</a>
<?php }
}
?>
我的问题是,当$list["tags"][$i]["title"]=='list'
时,随着循环的继续,我会多次收到消息'Not correct type'。我怎样才能回复该消息一次?
答案 0 :(得分:1)
您可以在echo语句后插入break;
以在满足条件时退出循环。使用break n;
退出 n 层循环/条件。
答案 1 :(得分:1)
您只需要跟踪您是否已经展示过它:
$shown = false;
for ( $i = 0; $i < sizeof( $list['tags'] ); $i++ ) {
if ( $list['tags'][$i]['title'] == "list" && !$shown ) {
echo "Not correct type";
$shown = true;
}
if ( $list['tags'][$i]['title'] != "list" ) {
echo '<a href="...">Text</a>';
}
}
但是这提出了一个问题:为什么你只想让信息显示一次?您是否希望它为标题不是$i
的{{1}}的所有值显示“不正确的类型”?