gpt4 book ai didi

php - 如何使用 file_get_contents 而不丢失回显值?

转载 作者:行者123 更新时间:2023-11-30 00:28:24 25 4
gpt4 key购买 nike

让我们从一篇有关静态页面 (Test.php) 的文章开始,其中包含另一个充满 PHP 代码的文件 (Code.php)。 Code.php 上的一些回显值在食物链上游的第三个文件 (Values.php) 上声明。

一切正常 - 直到我从 Test.php 中取出文章,将其插入数据库并通过回显 $Content 来显示它。现在我的包含不起作用,因为您不能将 PHP 包含放入数据库中。 (或者也许你可以,但这显然几乎是不可能的,每个人都尖叫着不要这样做!)

我刚刚学会了如何使用 file_get_contents:

$Content = str_replace('<p id="1"', '.file_get_contents($BaseINC."/inc/Test.php").'<p id="1">', $Content);

它工作得很好,只是它只显示静态文本 - 没有 PHP 代码。

然后我学会了如何解析文件,如下所示:

file_get_contents("http://MySite/Test.php")

效果更好。我可以 echo $Something,只要 $Something 在 Test.php 中定义...

$Something = 'Cool!';
echo $Something;

问题是在单独文件(例如 Values.php)上定义的所有回显值不再起作用,显然是因为我已从流程中删除了 Test.php。有没有办法以某种方式将 Test.php 与 Code.php 重新连接,以便这些回显值将重新获得它们的值?或者还有其他方法来完成我想做的事情吗?

无论其值(value)如何,大多数缺失值都是由数据库查询创建的。一种解决方法是根据每个页面的 URL 重新创建值。具有讽刺意味的是,我尝试过的所有显示页面 URL 的脚本都不起作用;相反,它们显示 Test.php 的路径。所以我真的很困惑。

最佳答案

我试图说明包含 php 文件的不同方法:

<?php
//Test.php
$bar = 'orange'; echo $bar;
<小时/>
<?php
// Example.php
echo file_get_contents("Test.php") // $bar = 'orange'; echo $bar;
echo file_get_contents("http://example.com/Test.php") // orange
// Probably not correct, big security risk https://www.owasp.org/index.php/Code_Injection
include("Test.php") // orange

关于php - 如何使用 file_get_contents 而不丢失回显值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22695355/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com