【发布时间】:2010-12-23 11:30:45
【问题描述】:
我们有一个我们使用的自定义框架,它允许我们将include 代码输入到其他页面。但是,即使include 代码没有输出任何内容,该代码的标题也会始终被打印出来。有没有办法让我可以通过exit 或return 进行特定的操作,通过include/require 进行捕获和捕获,以便我做正确的事情?
【问题讨论】:
我们有一个我们使用的自定义框架,它允许我们将include 代码输入到其他页面。但是,即使include 代码没有输出任何内容,该代码的标题也会始终被打印出来。有没有办法让我可以通过exit 或return 进行特定的操作,通过include/require 进行捕获和捕获,以便我做正确的事情?
【问题讨论】:
激活输出缓冲区,包含文件,然后检查其内容:
ob_start();
include "file.php";
$content = ob_get_contents();
ob_end_clean();
然后检查生成的内容并保留或转储它。
最好的祝愿, 费边
【讨论】:
这可能不是最合适的解决方案,但它是一个不错的技巧。您实际上可以使用 PHP-includes 作为函数和返回值。
例如。创建一个名为 myinclude.php 的文件:
<?php
$a = 9192*9192;
return a;
然后创建第二个文件并包含第一个文件:
<?php
$res = include("myinclude.php");
echo $res;
是的,它确实有效。有关详细信息,请参阅manual page。另请注意,如果包含文件未明确返回任何内容,则 include() 将返回“OK”(很奇怪)。这也适用于 require()、include_once() 和 require_once()。
【讨论】: