【问题标题】:PHP Catch "Empty" IncludesPHP Catch "Empty" 包括
【发布时间】:2010-12-23 11:30:45
【问题描述】:

我们有一个我们使用的自定义框架,它允许我们将include 代码输入到其他页面。但是,即使include 代码没有输出任何内容,该代码的标题也会始终被打印出来。有没有办法让我可以通过exitreturn 进行特定的操作,通过include/require 进行捕获和捕获,以便我做正确的事情?

【问题讨论】:

    标签: php include require


    【解决方案1】:

    激活输出缓冲区,包含文件,然后检查其内容:

    ob_start();
    include "file.php";
    $content = ob_get_contents();
    ob_end_clean();
    

    然后检查生成的内容并保留或转储它。

    最好的祝愿, 费边

    【讨论】:

      【解决方案2】:

      这可能不是最合适的解决方案,但它是一个不错的技巧。您实际上可以使用 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()。

      【讨论】:

      • 这是一个有趣的方法,如果我能给你们两个都给出正确的答案,我会的,因为结合使用 @halfdan 的方法和你们的方法让我确切地得到了什么我需要。谢谢!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-13
      • 2011-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-09
      相关资源
      最近更新 更多