在动态HTML之后使用echo语句

时间:2013-07-26 13:21:12

标签: php html

这是问题所在,我试图在动态生成的HTML之后回显一个语句或一个数组,不幸的是我想要回显的东西高于HTML,有没有办法在动态HTML之后回应它或者解决它?

代码:

<a href="index.php?id=do_something">Link 1</a>
<a href="index.php?id=do_something_else">Link 2</a>

if(isset($_GET["id"]) && $_GET["id"] == "do_something") { 
   $html = "dynamic html generate";
   echo $html;
   //after this im using foreach
   foreach($array as $item) { echo $item . "<br />"; }
}

当我点击这两个中的一个时,会显示动态生成的HTML。现在我举个例子:

$array = array("error1", "error2");

所有生成的PHP都高于动态HTML:/。 我应该如何修复它以便我可以在动态HTML下面回显所有这个数组?

由于

2 个答案:

答案 0 :(得分:0)

使用ob_start

缓冲
ob_start();
// dynamic html code generate
$dynamic_html = ob_get_clean();

echo $dynamic_html;

// your code

echo $dynamic_html;

答案 1 :(得分:0)

听起来你错过了动态html中的一些结束标记(很可能是</table>)。这就是为什么后来生成的回声显示在顶部。

示例(请注意缺少的结账表):

<?php
echo "<table><tr><td>TableText</td></tr>";

echo "I should be bellow the table, but going to the top.";


?>

将产生:

I should be bellow the table, but going to the top. 
TableText