我希望使用PHP调用本地PHP页面,并且已经执行了服务器端代码。
例如,如果我有一个包含以下内容的页面:
Hello, this is <?php $name="John"; echo $name ?>
我希望有一个get命令,如file_get_contents(local_php_page)或fopen(handle)返回:
Hello, this is John
而不是
Hello, this is <?php $name="John"; echo $name ?>
最好的方法是什么?
答案 0 :(得分:1)
输出缓冲应该能够为您做到这一点:
ob_start();
include 'myfile.php';
$xhtml = ob_get_clean();
您还可以获得包含的输出,例如:
$xhtml = include 'myfile.php';
有关详情,请查看The PHP Manual
答案 1 :(得分:0)
正如您已经提到的,您可以使用file_get_contents向任何http网址发送获取请求。您必须确保allow_url_fopen已启用。当然,您的网络服务器必须配置为正确处理php请求
<?php
$requestUrl = 'http://localhost/your_file.php';
$content = file_get_contents($requestUrl);
var_dump($content);
答案 2 :(得分:0)
如果您的服务器中有allow_url_fopen,则可以将fopen与url一起使用。
答案 3 :(得分:0)
需要调用http url而不是路径
$url="http://".$_SERVER['HTTP_HOST']."/yourpath/";
$str=file_get_contents($url."/yourfile.php");
echo $str;