2012-09-26 39 views
0

在我的脚本中,我根据变量选择包含哪个页面。包含的页面接收变量?

是否包含页面收到的主网页中定义的变量?或者我必须重新定义它们?

如果是这样,什么是对变量传递至包含页面的最佳方式?

我想包括( “page.php文件?VAR =” $ VAR)

但似乎实际上是尝试以包括与该字符串名称的文件。

建议?

+2

请先阅读功能。您的所有问题都应该包括在内:http://php.net/include。如果你没有时间阅读,请留意*可变范围*。 – hakre

回答

0

如果您在包含页面之前定义了变量,则不需要任何查询字符串。您的变量将在名称包含的页面中访问。例如

$name = "Awais" 
include("page.php"); 

然后在page.php

echo $name; //will print Awais 
0

你是关闭设置变量自己在主页更好。 include试图包含一个本地文件,而不是一个HTTP GET请求,但只是设置变量,您可以使用它们。

0

如果定义$var = 1include("page.php");后的变量在该文件访问,因为它没有更多然后你已经得到了扩展。

0

这...... “包括(” page.php文件VAR = “$变种?)” 将无法正常工作

而是尝试以下操作:

page1.php中

<?php 

$dog_name = "scruff"; 

include("otherpage.php"); 

?> 
在page1.php中

otherpage.php

<?php 

echo $dog_name; 

?> 

这将输出:

scruff 

midnightlightning所示:“已经在第一页范围内的变量已经在第二页中定义了。”

0

是否包含页面接收变量在主网页界定?

是的,你包括代码是相同的范围内。这也是记录的行为,参见include

$var = 'value'; 
include('page.php'); # has $var defined now. 
unset($var); 
include('page.php'); # has $var undefined now. 

因此,您可以看到,没有必要重新定义它们。

但你可能要分开是因为它有副作用,请参阅: