Home  >  Article  >  Backend Development  >  The difference between local variables and global variables in php functions

The difference between local variables and global variables in php functions

伊谢尔伦
伊谢尔伦Original
2017-05-09 10:44:163605browse

Variables defined within the program are called local variables, which are only used within the program and disappear when the program ends. Variables defined outside the program are called global variables, which can be called by the program, but will not disappear when the program ends. The previous chapters introduced the local variables of custom functions and global variables of custom functions in PHP functions. Define a function. The variables in this function are local variables. They can only be used inside this function. return is the return value of this function. Calling this function will output this value. This value can be a variable within the function, which is a local variable. A global variable is a variable defined outside a function, and its scope extends from the point of definition to the end of the file.

In PHP, functions are treated as separate program pieces, so local variables will overwrite global variables. Even if the same variable is defined in the local variable and does not have a global variable, it will be overwritten.

The following is an example to illustrate their differences:

<?php
//局部变量测试
$s1= "out s1"; //全局变量
function say(){
 $s1 = "in s1"; //局部变量
 echo "say():$s1";
}
say(); //输出局部变量: in s1
echo "<br/>";
echo "function out:$s1"; ////输出全局变量:out s1
//static变量测试
function count1(){
 $num = 0;
 $num++;
 echo $num." ";
}
function count2(){
 static $num = 0;
 $num++;
 echo $num." ";
}
for($i=0; $i<10; $i++){
 count1(); //11 1 1 1 1 1 1 1 1 1
}
echo "<br/>";
for($i=0; $i<10; $i++){
 count2(); //1 2 3 4 5 6 7 8 9 10
}
echo "<br/>";
//全局变量在函数中运用,加global
$a="php";
$b = "java";
function show(){
 echo $a; // 无输出
 global $b;
 echo $b; //定义global,输出java
}
show();
?>

Explanation of the difference between local variables and global variables:

1. Local variables can access internal variables and output results inside the function; variables inside the function cannot be accessed outside the function, so the results cannot be output; if the variable value needs to be called outside the function, its value must be passed back to the function through the return instruction. Main program block for subsequent processing.

2. In PHP, since functions can be regarded as separate program code fragments, local variables will override the visibility of global variables, so global variables cannot be called directly in the function. If you want to use a global variable in a function, you must use keywords to define the target variable, and the keyword of this global variable is "global". Using the keyword "global" you can import global data into the local scope of a function. , to tell the function body that this variable is a global variable.

3. Another important feature of variable scope in PHP is static variables. Static variables only exist in the local function scope and are only initialized once. When the program execution leaves this scope, its value will not disappear, and the result of the last execution will be used. In the above examples, static variables are used and static variables are not used respectively. Friends can compare them carefully.

【Recommended related tutorials】

1. "php.cn Dugu Jiujian (4)-php video tutorial"

2. php programming from entry to master a full set of video tutorials

3. php practical video tutorial

The above is the detailed content of The difference between local variables and global variables in php functions. For more information, please follow other related articles on the PHP Chinese website!

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