在观看和谷歌搜索几个小时后,我无法弄清楚这一点。
<?php
foreach ($myResults as $rowNumber => $myResult) {
if ($rowNumber<$numberOfResults/2) {
print "<h2>";
print render($myResult->field_field_item_category[0]['rendered']['#title']) ;
print "</h2>";
}?>
html code here
<?php
elseif ($rowNumber>$numberOfResults/2) {
print "<h2>";
print render($myResult->field_field_item_category[0]['rendered']['#title']) ;
print "</h2>";
}
} ?>
答案 0 :(得分:2)
您尝试在IF
声明的结尾与ELSEIF
if(something)
{
// conditional code here
}
// do not put code here
elseif (somethingelse)
{
// conditional code here
}
答案 1 :(得分:1)
<?php
和?>
之间的部分被解释为PHP代码。其余的是纯HTML代码。
PHP(和任何语言)中的if() { }
和elseif() { }
之间不能有任何关系,也不能是HTML代码。
将elseif
更改为if
,它会有效。
答案 2 :(得分:1)
我假设您希望html code here
块只显示第一个if测试是TRUE
。如果是这种情况,请将html块之前的尾随}
移到后面。
<?php
foreach ($myResults as $rowNumber => $myResult) {
if ($rowNumber<$numberOfResults/2) {
print "<h2>";
print render($myResult->field_field_item_category[0]['rendered']['#title']) ;
print "</h2>";
?>
html code here
<?php
}elseif ($rowNumber>$numberOfResults/2) {
print "<h2>";
print render($myResult->field_field_item_category[0]['rendered']['#title']) ;
print "</h2>";
}
}
?>
如果你想让html code here
在if语句的中间移出<?php
foreach ($myResults as $rowNumber => $myResult) {
if ($rowNumber<$numberOfResults/2) {
print "<h2>";
print render($myResult->field_field_item_category[0]['rendered']['#title']) ;
print "</h2>";
}elseif ($rowNumber>$numberOfResults/2) {
print "<h2>";
print render($myResult->field_field_item_category[0]['rendered']['#title']) ;
print "</h2>";
}
}
?>
html code here
。
{{1}}
此外,缩进。这使得这样的错误来源更加明显。