是否可以执行PHP代码到变量?例如,我有在同一目录index.php
和page.php
文件。如果您执行page.php
,您将拥有一部分HTML页面。我想把它作为一个字符串放入index.php
的变量中。 有什么建议吗?执行PHP代码插入变量
回答
您可以使用输出缓冲:
<?php
ob_start();
include('page.php');
$page = ob_get_clean();
?>
介意page.php文件是在同样的情况下仍执行(全局变量,函数等继续存在)
通常做这样的事情听起来像破碎的设计和page.php应该重写正确。
+1,但是这会将来自其他脚本的变量带入范围,这是不必要的。 –
这对我来说工作得很好。谢谢 –
include('page.php');
这将包括一切从page.php
到index.php
不,运行脚本,但没有得到输出。 –
我需要把一个字符串放入一个变量,而不仅仅是'include' –
你可以使用cURL检索脚本的输出并保存到一个变量。这里是你的index.php中做什么:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, ‘page.php’);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$contents = curl_exec ($ch);
请注意,这是不必要的,包括其他的脚本(以及相关的变量)到您的网页时,所有你想要的是响应。包括脚本意味着你必须避免变量名,函数名等之间的冲突
如果你想执行的从page.php文件,你的代码,您可以包括文件,并进行功能这样page.php文件:
<?php include('page.php');
$test = function MyHtmlCode();
echo $text;
?>
运行脚本,但不会得到输出。 –
您没有提供示例代码,因此我会假定该页面实际上是打印的(使用echo,print等),然后您可以使用php output buffering。
<?php
ob_start();
require_once('index.php');
$out = ob_get_contents();
ob_end_clean();
?>
(编辑)
这是一个解决方案,但它的挑衅不是最好的做法......这将是,但此举打印HTML成生成HTML并返回函数的代码,然后将这些函数移动到一个单独的文件中,该文件将包含在index.php和page.php中,然后简单地调用这些函数。包括一个应该打印某些输出的文件,并用输出缓冲区对其进行翘曲会使代码变得不可读和混乱。
你应该试试这个:
ob_start()
include('page.php');
$variable = ob_get_clean();
这将启动一个输出缓冲器,包括page.php
文件,并把已写入到输出缓冲区$variable
- 1. 在PHP变量中插入PHP代码
- 2. 错误代码执行相关代码的变量代表的变量代表
- 3. 将变量插入html代码
- 4. 背后的SqlDataSource插入代码变量
- 5. 插入变量以最小化代码
- 6. 执行PHP代码
- 7. 执行php代码后变白屏幕
- 8. 在代码执行后记住变量
- 9. 嵌入/执行PHP代码的最佳WordPress插件是什么?
- 10. 将变量和PDF标签插入PHP代码
- 11. 有没有办法在javascript代码中插入php变量?
- 12. php代码行不执行
- 13. xdebug remote:我可以执行php代码或更改变量吗?
- 14. 执行PHP代码的字符串变量
- 15. 执行html和PHP代码到一个变量
- 16. PHP内容插入/执行
- 17. Zend_View不执行PHP代码执行
- 18. 插入JavaScript变量在PHP
- 19. 插入两个变量php
- 20. PHP表单插入\代码
- 21. 插入PHP代码insode EOT
- 22. 插入JavaScript PHP代码
- 23. PHP - 实际执行变量
- 24. PHP代码不执行
- 25. 从PHP执行htmlunit代码
- 26. javascript执行php代码
- 27. PHP代码执行顺序
- 28. php代码没有执行?
- 29. javascript变量在php代码
- 30. 试图将“php for wordpress”插件的代码放入一个php变量
一切看看在http:// ES2 .php.net /手动/ EN/function.file-GET-contents.php – Lobo
你想要的page.php文件的结果是index.php文件的结果的一部分? – ppeterka
@Lobo的OP要评估的结果,而不是原始内容,我认为...... – ppeterka