我要做的是从filea更改fileb中的变量。有点像在某种程度上使用fileb作为配置文件。
示例:
文件A:
require_once "fileb.php";
if($power == 'off') {
exit;
}
if($test1 == 'one') {
echo "The first option is selected";
} elseif($test1 == 'two') {
$power = 'off';
}
文件B:
$power = 'on';
因此,在此示例中,用户ID提示输入$ test1,如果用“1”回复,则会得到回显。我想要做的就是这样做,如果他们用“两个”回复它会关闭页面,而不仅仅是为了他们而是为了每个人。我试图在不使用DB的情况下完成所有这些操作,这太容易了。谢谢你的帮助!
答案 0 :(得分:1)
您的fileb
缺少<?php ... ?>
个标签。如果没有这些,你就可以编码&#34;永远不会被视为代码。它只是被视为纯文本。
文件b:
<?php
$power = 'on';
文件c:
Hello
<?php
$foo = 'world!';
提交a:
<?php
include('fileb.php');
echo $power;
include ('filec.php'); // "Hello" is immediately output
echo $foo; // tell PHP to put the $foo var, which will print out "world!"
答案 1 :(得分:1)
我试图在不使用数据库的情况下完成所有这些操作,这太简单了
使用数据库的原因很简单。这是完成此任务的正确方法。修改实际的PHP代码文件是一个着名的坏主意。 (并且Stack Overflow上有人几乎每周一次,似乎。)
如果将文件作为执行代码的一部分包含在内,则可以将该变量用作其他任何变量。这允许您以瞬态方式操作变量,但不操纵创建变量的代码。
您尝试做的是持久更改了变量。为了做到这一点,需要在应用程序之外的某处编写。数据库真的对于那种事情是好的。您也可以写一个简单的文本文件(一串文本,结构化XML等),但在这种情况下,您必须手动注意并发写入和其他此类错误。 (数据库也非常擅长这一点,这使它们非常适合多线程/多用户应用程序,如Web应用程序。)
我认为你可以将PHP文件本身视为可编辑的文本文件,就像任何其他文件一样。 (因为PHP毕竟只是文本。)但是,再次,这是一个非常糟糕的主意。首先,完全解析出您想要的值并仅将更改写回该值将非常非常。此外,您还有可能会破坏被视为可执行代码的文件,这会带来各种潜在风险。
只需写入数据库,文件或应用程序之外的任何其他简单数据持久性介质。