PHP 检查 require_once() 内容是不是为空
Posted
技术标签:
【中文标题】PHP 检查 require_once() 内容是不是为空【英文标题】:PHP Check If require_once() Content Is EmptyPHP 检查 require_once() 内容是否为空 【发布时间】:2011-07-30 11:10:38 【问题描述】:我正在编写一个 php 脚本,其中包括通过“require_once()”方法包含几个外部 PHP 脚本。我想知道主脚本(包括其他脚本)是否有办法判断包含的脚本的处理后的输出是否生成了任何内容。
因此,例如,用户对特定脚本的权限可能会导致 PHP 不生成任何输出。因此,也许主脚本会回显如下内容:
Nothing interesting here!
有没有办法在主脚本中做到这一点,或者我需要在包含的脚本中创建这些测试,并将结果返回给主脚本?
感谢您的宝贵时间, spryno724
【问题讨论】:
您将首先必须处理脚本,以检查返回是否为空。 【参考方案1】:您可以像这样使用ob_start
、ob_get_contents
和ob_end_clean
捕获输出:
ob_start();
require_once('script.php');
$output = ob_get_contents();
ob_end_clean();
【讨论】:
【参考方案2】:ob_start();
require_once 'your_file.php';
$output = ob_get_flush(); // ob_get_clean() if you want to suppress the output
if(empty($output))
echo 'Nothing interesting here!';
【讨论】:
【参考方案3】:如果 require_once 没有执行,请不要担心。尝试使用如下调试函数来确定 require_once 文件的变量/函数是否正常工作:-
var_dump($Your_Variable_Name_from_require_Once_file);
【讨论】:
以上是关于PHP 检查 require_once() 内容是不是为空的主要内容,如果未能解决你的问题,请参考以下文章
php源码分析 require_once 绕过不能重复包含文件的限制