在php中使用htmlLoadFile函数加载html文件时,是否有方法传递自定义变量?

在php中使用htmlLoadFile函数加载html文件时,是否有方法传递自定义变量?,php,html,variables,load,domdocument,Php,Html,Variables,Load,Domdocument,我试图将特定变量传递给扩展名为.php的html文件 例如,我试图在另一个文件中使用loadHTMLFile()函数来加载main.php。但是当我尝试添加这样的代码时 "<?php echo "hello world"?>" '.<?php echo "hello world" ?>.' 但它不起作用 function loadHtml($loadfile){ libxml_use_internal_errors(true);

我试图将特定变量传递给扩展名为.php的html文件 例如,我试图在另一个文件中使用loadHTMLFile()函数来加载main.php。但是当我尝试添加这样的代码时

"<?php echo "hello world"?>" 
'.<?php echo "hello world" ?>.' 
但它不起作用

      function loadHtml($loadfile){
        libxml_use_internal_errors(true);
            $doc = new DOMDocument();
        $doc->loadHTMLFile($loadfile);
        echo $doc->saveHtml() ;
    }
在index.php中调用,如下所示:

     loadHtml("./views/html/shop/main.php");

关于错误,没有错误,只是我不能调用与main.php文件相关的php变量或函数或任何php,因为任何带有php标记的文件都会被注释。如果您知道解决方案或方法,请帮助我。

您可以使用
文件获取内容()
eval()

示例:
eval(file_get_contents('file.php')


但是您必须从要包含的文件中删除PHP标记,或者这样做:
eval('?>'.file_get_contents('file.PHP')

为什么不直接使用
require(“./views/html/shop/main.php”)
include(“./views/html/shop/main.php”)


使用
eval()
不是一个好主意,因为它在特殊的上下文中调用脚本,而且不安全,供电效率较低,将来调试错误也不太困难(堆栈跟踪日志不包含eval文件的源)。

很好地发出HTTP请求而不是从本地文件系统读取可以“修复”这…但这是否明智,取决于你需要它的具体情况。如果这只是为了某个管理任务或别的什么,那可能没问题——但如果在每次加载页面时都这样做,那么可能会对性能造成相当大的损害。
     loadHtml("./views/html/shop/main.php");