请求include内部的PHP变量,在include外部定义


Requesting PHP variable inside include, defined outside include

这里有点问题,我有一个文件,代码如下:

<?php 
$kvkvariable = 000050650459;   
include("../../../../../../httpdocs/profiel/indextemplate.php"); 
?> 

在包含的PHP文件中,我需要$kvkvariable。然而,当我回显这个变量时,它并没有显示我希望它显示的数字?

如果我将$kvkvariable的定义代码放在indextemplate.php中,它就可以正常工作。我认为包含和将代码粘贴到同一个文件中是一样的吗?我该如何解决这个问题?

谢谢!

编辑:

indextemplate.php立即以以下内容开头:

<?php
echo "Dit is kvk: ".$kvkvariable."";

它给出了以下结果:

Dit is kvk: 1337893

老实说,我不知道他从哪里得到那个号码!?

<?php 
$kvkvariable = 000050650459;   
include("../../../../../../httpdocs/profiel/indextemplate.php"); 
?> 

当PHP看到一个以0开头的数字时,它会假设它是八进制的——如果你通过八进制到十进制的转换器运行000050650459,它会给出1337893。

因此,您的include正在按预期工作;PHP的变量类型并没有达到预期效果。

怎么样:

<?php
$kvkvariable = 000050650459;   
include( "../../../../../../httpdocs/profiel/indextemplate.php?myvar=" . $kvkvariable ); 
?>

您将include中的变量视为$_GET[ 'myvar' ]

然后你的第二个文件应该是这样的:

<?php
echo "Dit is kvk: " . $_GET[ 'myvar' ] . "";

尝试使用php的global关键字。

<?php 
global $kvkvariable;
$kvkvariable = 000050650459;   
include("../../../../../../httpdocs/profiel/indextemplate.php"); 
?> 

我自己的问题的答案很简单,在定义变量的数字周围使用"!我的坏。。也许这能帮助别人!