PHP basic note function global variable_PHP tutorial
WBOYOriginal
2016-07-13 10:50:27972browse
global is a global variable in PHP. This global is just a global variable on the page. For variables outside of functions, we can directly use the global declaration in the function to obtain the value of the variable.
Example
The code is as follows
Copy code
代码如下
复制代码
$a=12;
function fn()
{
global $a;//使用外层$a变量,不使用这个方法$a为局部变量
$a+=12;
}
echo '$a='.$a//输出结果
?>
输出的结果:$a=24
$a=12;
代码如下
复制代码
$glpbal $a;
$a=123;
function f()
{
echo $a; //错误,
}
//再看看下面一例
function f()
{
global $a;
$a=123;
}
f();
echo $a; //正确,可以使用
function fn()
{
代码如下
复制代码
//A.php 文件
function Test_Global()
{
include 'B.php';
Test();
}
$a = 0 ;
Test_Global();
echo $a;
?>
//B.php 文件
function Test()
{
global $a;//申明函数体Sum内使用的$a变量为global全局变量
$a =1;
}
?>
global $a;//Use the outer $a variable, do not use this method $a is a local variable
$a+=12;
}
echo '$a='.$a//output result
?>Output result: $a=24
Summary: Global variables defined within the function body can be used outside the function body, but global variables defined outside the function body cannot be used inside the function body,
代码如下
复制代码
//A.php 文件
function Test_Global()
{
Test();
}
include 'B.php'; //将include 从局部Test_Global函数中移出
$a = 0 ;
Test_Global();
echo $a;
?>
//B.php 文件
function Test()
{
global $a;
$a =1;
}
?>
The code is as follows
Copy code
$glpbal $a;
$a=123;
function f()
{
echo $a; //Error,
}
//Look at the following example
function f()
{
global $a;
$a=123;
}
f();
echo $a; //Correct, you can use
The above examples are just basic knowledge of global variables. Let’s look at more complicated ones:
The code is as follows
Copy code
//A.php file
function Test_Global()<🎜>
{<🎜>
Include 'B.php';<🎜>
Test();<🎜>
}<🎜>
<🎜>$a = 0 ;<🎜>
Test_Global();<🎜>
echo $a;<🎜>
?>
//B.php file
function Test()<🎜>
{<🎜>
global $a;//Declare the $a variable used in the function body Sum as a global global variable<🎜>
$a =1;<🎜>
}<🎜>
?>
Why is the output 0?!!
In user-defined functions, a local function scope will be introduced. Any variables used inside a function will be limited to the local function scope by default (including variables in files imported by include and require)!
Explanation: Test_Global in the A.php file is a defined third-party function. This function uses include to import the global global variable of $a in the B.php file, so $a is limited to the Test_Global local function scope, so B The scope of $a in the .php file is within Test_Global, instead of affecting the entire A.php....
Solution:
1. Break out of local function
The code is as follows
Copy code
//A.php file
function Test_Global()<🎜>
{<🎜>
Test();<🎜>
}<🎜>
include 'B.php'; //Move include from the local Test_Global function <🎜>
$a = 0 ;<🎜>
Test_Global();<🎜>
echo $a;<🎜>
?>
//B.php file
function Test()<🎜>
{<🎜>
global $a;<🎜>
$a =1;<🎜>
}<🎜>
?>
global problem analysis:
Question: I have defined some variables ($a) in config.inc.php, and include ("config.inc.php") outside the function in other files. These variables $a need to be used inside the function. If Without a statement, echo $a will not print anything. Therefore, global $a is declared, but there are many functions and many variables. You can't declare it like this repeatedly, right? If there is any good solution, please give me some advice.
answer1: First define the constants in config.inc.php: define (constant name, constant value)
Then require 'config.inc.php' in other places where it is needed,
Then you can use this constant directly in this file.
answer2: I also have a way, which is to define an array, such as $x[a], $x, so that you only need to declare global $x.
answer3: I tried your method, but it didn’t work.
answer4: Change your php.ini file.
http://www.bkjia.com/PHPjc/632627.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/632627.htmlTechArticleglobal is a global variable in php. This global is just a page global variable. For example, we can use variables outside functions You can obtain the value of the variable by directly using the global declaration in the function. For example...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn