当前位置: 首页 > 面试题库 >

将变量从一个PHP包含文件传递到另一个:全局与非

戎劲
2023-03-14
问题内容

我正在尝试将变量从一个包含文件传递到另一个。除非我在第二个包含文件中将变量声明为全局变量,否则此方法不起作用。但是,我不需要在调用第一个include的文件中将其声明为全局文件。例如:

front.inc:

$name = 'james';

index.php:

include('front.inc');
echo $name;
include('end.inc');

输出:詹姆斯

end.inc:

echo $name;

输出:无

如果我在end.inc中回显$ name之前声明了全局$name,那么它将正常工作。

我正在使用Apache服务器。我将如何配置它,以便不必声明$ name为全局名称?一个相对于另一个有优点/缺点吗?


问题答案:

当在PHP中包含文件时,它的行为就像代码包含在文件中。想象一下,将代码从每个包含的文件中复制并直接粘贴到您的index.php。这就是PHP与include一起工作的方式。

所以,在你的榜样,因为你已经设置了一个名为变量$name在你的front.inc文件,然后既包括front.incend.inc你的index.php,你就可以echo$name后的任何地方includefront.inc你内index.php。同样,PHP会处理您index.php,就好像您所包含的两个文件中的代码是该文件的
一部分一样

当您将一个echo放在包含文件中的变量中,而不是在其内部未定义的变量中时,您将不会得到结果,因为它将与任何其他包含文件分开对待。

换句话说,要执行您期望的行为,您需要将其定义为全局行为。



 类似资料:
  • 问题内容: 我有两个 newAccessLevels.java ,它有两个按钮“ Level 1”,“ Level 2”和 newAccessPanel.java。 我需要获取用户选择“ 1或2”的级别,以便可以在标题中显示它。 accessPanel.java, 例如访问级别1,访问级别2。如何完成此操作。下面是示例代码,因此,如果单击级别1,则将打开标题为* ACCESS LEVEL 1 的n

  • 问题内容: 我刚开始使用快速语言,并且知道这个问题是重复的。我发现了几个类似的问题和答案,但我无法弄清这个问题。 我想将ScandString变量的值从ScanViewController传递给ResultViewController。 ScanViewcontroller如下: ResultViewController如下: println(detectedString)没有给我任何结果。问题是

  • 问题内容: 我想将一个类变量传递给另一个类,并使其成为该类的类变量。在以下情况下我该怎么做? 问题答案: 很难理解您正在问的问题,但这是一个可能的答案: 使B类成为A的子类: 如果重新声明为,则会出现一种情况,其中存在一个可以称为或的属性。(或在任一或刚刚…甚至作为或地方,并有类型和分别。) 如果您无法在和(或,以及一些包含声明的第三类)之间创建直接或子类型关系,那么您很不走运。他们无法共享声明。

  • 我有一个来自firebase的uid,但它是这样存储的: checkout.js 存储我需要传递到另一个页面的uid。这个uid存储在中,我需要将它放到中才能在那里使用uid。我该怎么做?如果需要更多代码,请让我知道。我正在使用react/js

  • 问题内容: 所以我想知道当在多个php文件中使用变量名时,是否有可能从特定的php文件中获取变量。一个例子是这样的: page1.php有 page2.php有 footer.php应该有 好的,这个例子有点抽象,但是就我所能讲的那么短。我想你明白我的意思!这就是我追求的页脚!有什么解决办法吗? 问题答案: 您可以,但是最后一个include中的变量将覆盖第一个中的变量: myfile.php m

  • 我的视图文件夹中有两个EJ,我创建了非常简单的EJ,看看是否可以将变量从一个EJ发送到另一个EJ。 a、 vews文件中的ejs b.ejs有 在我的节点js这是什么我做const表达式=要求('Express'); const body Parser=要求('body-parser'); 我想邮报必须在这里做点什么...