我正在尝试制作匹配的东西。如果'if'语句像这样
$name = "how"; // <<<this is an input
if(preg_match( "/(How|my|brain|works)/i",$name)){
$result1= "this is one of the results";
}else{
$result1= " ";
我计划存储结果,如果有实际匹配,它会显示第一条消息,有时可能是图片。问题是我如何能够做到这一点,以便当我以后进行比赛时,如果不是这样,它将没有空白页面。我怎么能跳过它。例如,如果我正在做一个列表并且大约有5个与输入匹配,它将显示5个输入而不是显示10个列表。该列表可能看起来像这样
<ul>
<li><?php echo $result1 ?></li>
<li><?php echo $resutl2 ?></li>
<li><?php echo $match10 // and so on ?></li>
</ul>
我怎样才能使它跳过例如匹配9,因为它等于空格或显示它,因为它不等于空格。问题是它会列出所有3,如果match9等于空格,它会显示空格,我希望它跳过那些。
答案 0 :(得分:4)
使用数组而不是单独的变量,只有在匹配时才添加到数组中。
$results = array();
$name = "how"; // <<<this is an input
if(preg_match( "/(How|my|brain|works)/i",$name)){
$results[] = "this is one of the results";
}
然后,当您显示结果时:
<ul>
<?php
foreach ($results as $r) {
echo "<li>$r</li>\n";
}
?>
</ul>