Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将u呈现的uPHP写入HTML文件_Php_Html - Fatal编程技术网

将u呈现的uPHP写入HTML文件

将u呈现的uPHP写入HTML文件,php,html,Php,Html,这里有问题 我需要将PHP脚本的输出写入HTML页面,然后由DOMPDF处理,这样我就可以制作一个漂亮的小PDF供一些朋友使用 当我使用file_get_contents来获取“捐赠者”PHP脚本的内容时,它确实做到了这一点。它抓取未评估的PHP并保存它,让我按照自己的意愿去做 我需要运行PHP脚本,然后将输出和文件内容放到某个地方 谢谢, Rob通过http调用它以使其运行 file_get_contents("http://localhost/my/script/file.php"); 或

这里有问题

我需要将PHP脚本的输出写入HTML页面,然后由DOMPDF处理,这样我就可以制作一个漂亮的小PDF供一些朋友使用

当我使用file_get_contents来获取“捐赠者”PHP脚本的内容时,它确实做到了这一点。它抓取未评估的PHP并保存它,让我按照自己的意愿去做

我需要运行PHP脚本,然后将输出和文件内容放到某个地方

谢谢,
Rob

通过http调用它以使其运行

file_get_contents("http://localhost/my/script/file.php");
或者,从命令行运行它:

php -f /path/to/my/script/file.php

理想情况下,您可以配置PHP脚本,这样它就不会编写内容,而是构建一个巨大的字符串并返回它。这样,您只需调用一个函数并返回一个包含所需信息的字符串

如果目标脚本超出了您的控制范围,您可以使用以下方法解决它:

ob_start();
include('script.php');
$contents = ob_get_contents();
ob_end_clean();

您可以通过几种不同的方式来实现:

1) 通过脚本的URL(通过web浏览器)而不是文件路径获取脚本

2) 使用

3) 使用脚本并将其包含到当前脚本中。例如:

ob_start();
include('script.php');
$result = ob_get_clean();

4) 使用
shell_exec('php-f script.php')从命令行运行它

两个快速解决方案。首先是将PHP脚本设置为从url运行,然后使用
file\u get\u contents
curl
函数下载页面。这将为您提供一个包含正确内容的字符串

$string = file_get_contents('http://example.com/myscript.php');
第二种方法是使用
包含
和输出缓冲。输出缓冲接收任何
echo
print
语句,并将其内容存储在内存中,而不是输出到浏览器/屏幕

ob_start(); //start output buffering
include("myscript.php"); //script will run in the current context, but output will be stored in memory
$string = ob_get_clean(); //stored output will be fetched into $string, and buffering ended

优雅的简单。还有一些我不知道的事。谢谢,沃蒂!