我们使用了一个自定义框架,允许我们include
编码到其他页面。但是,即使include
代码没有输出任何内容,也始终打印此代码的标题。有没有一种方法可以exit
或return
某些特定的东西,我可以通过include
/ require
捕获并捕获,以便我能做正确的事情?
答案 0 :(得分:5)
激活输出缓冲区,包含文件,然后检查其内容:
ob_start();
include "file.php";
$content = ob_get_contents();
ob_end_clean();
在检查生成的内容之后,保留或转储它。
祝福, 费边
答案 1 :(得分:3)
这可能不是最合适的解决方案,但这是一个很好的技巧。您实际上可以使用PHP-includes作为函数并返回值。
例如。创建一个名为myinclude.php的文件:
<?php
$a = 9192*9192;
return a;
然后创建第二个文件并包含第一个文件:
<?php
$res = include("myinclude.php");
echo $res;
是的,它确实有效。有关详细信息,请参阅manual page。另请注意,如果从include文件中没有显式返回任何内容,include()将返回“OK”(奇怪的是)。这适用于require(),include_once()和require_once()。