日期:2014-05-17  浏览次数:20471 次

获取“包含文件执行结果”的字符串
为描述问题,下面给出一简单模型:
比如有一文件 a.php,内容如下:

<div id='top'>
    <?php $user="张三"; ?>
    <p>欢迎你:<?php print $user ?> <a href='../public/logout.php'>注销</a></p>
</div>


有另一文件 b.php

<?php
$s=file_get_contents('a.php',1);
?>


在 b.php 中虽然能读取文件 a.php 的内容,却不是执行后的内容,若希望能解释 php 中的代码,使 $s 得到如下的结果,有什么好的办法吗?

<div id='top'>
    <p>欢迎你:张三 <a href='../public/logout.php'>注销</a></p>
</div>

------解决方案--------------------
直接require/include进来 
------解决方案--------------------
$s=file_get_contents('http://localhost/a.php');
------解决方案--------------------
include之后 替换成自己想要的具体内容
------解决方案--------------------
上面少了个括号

ob_start();
include 'a.php';
$s = ob_get_clean();