混合PHP和HTML代码

混合PHP和HTML代码,php,Php,我找了好几个小时,在谷歌上搜索了好几个小时后才发现这一点 <?php foreach ($myResults as $rowNumber => $myResult) { if ($rowNumber<$numberOfResults/2) { print "<h2>"; print render($myResult->field_field_item_category[0]['rendered']['#title']) ;

我找了好几个小时,在谷歌上搜索了好几个小时后才发现这一点

<?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代码

您试图在
IF
语句的结尾和
ELSEIF
语句的开头之间回显HTML代码

if(something)
{
  // conditional code here
}

// do not put code here

elseif (somethingelse)
{
  // conditional code here
}

之间的部分被解释为PHP代码。其余的是纯HTML代码

PHP(和任何语言)中的
if(){}
elseif(){}
之间不能有任何区别,HTML代码也不能


elseif
更改为
if
,它将工作。

我假设您希望
html代码块仅在第一个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>";
     }
  } 
?>

另外,缩进。这使得类似这样的错误的来源更加明显。

您不能找出什么?你的问题是什么?正是我的想法。你想达到什么目标?错误在哪里?我会用echo录制而不是打印。对不起。第一次张贴。分析错误:语法错误,意外的T_ELSEIFOK。但是我想如果我退出了php,我可以通过HTML注入一个新的div,然后再次打开php?是的,你可以,但是你决定这样做的地方是无效的,没有编程意义:)你可以在你的条件的括号
{
}
中这样做。不,php发生了,然后HTML发生了,然后它循环,php发生,然后html发生,然后它循环,php发生,然后html发生,然后它循环,php发生,然后html发生,然后它循环,等等。谢谢。我试试看。为什么我没有工作?我不认为结束和启动php是一个问题?我正在尝试创建两个单独的div,它们浮动以生成列。啊,那是因为你先打印一个结果,然后打印另一个结果。我会更新。问题中还包括2个浮动div。
<?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