在我的脚本中,我根据变量选择要包含的页面。
包含的页面是否接收主页面中定义的变量?或者我必须重新定义它们?
如果是这样,将变量传递给包含页面的最佳方法是什么?
我尝试过include(“page.php?var =”。$ var)
但实际上它似乎试图包含一个带有该字符串名称的文件。
么?
答案 0 :(得分:0)
第一页中已在范围内的变量已在第二页中定义。
答案 1 :(得分:0)
最好在主页面中设置变量本身。 include
尝试包含本地文件,而不是HTTP GET请求,但只是设置变量,您可以使用它们。
答案 2 :(得分:0)
如果您定义$var = 1
,之后include("page.php");
可以在该文件中访问变量 ,因为它只不过是您已经获得的扩展。
答案 3 :(得分:0)
这......“include(”page.php?var =“。$ var)”将无效
请尝试以下方法:
page1.php中
<?php
$dog_name = "scruff";
include("otherpage.php");
?>
otherpage.php
<?php
echo $dog_name;
?>
这将在page1.php上输出:
scruff
正如midnightlightning所说:“第一页中已经在范围内的变量已在第二页中定义。”
答案 4 :(得分:0)
如果在包含页面之前定义变量,则不需要任何查询字符串。您的变量将在包含的页面中使用名称进行访问。例如
$name = "Awais"
include("page.php");
然后在page.php
echo $name; //will print Awais
答案 5 :(得分:0)
包含的页面是否接收主页中定义的变量?
是的,您包含的代码在同一范围内。这也是记录在案的行为,请参阅include
。
$var = 'value';
include('page.php'); # has $var defined now.
unset($var);
include('page.php'); # has $var undefined now.
正如您所看到的,没有必要重新定义它们。
但您可能想要将其分开,因为它有副作用,请参阅: