Home > Backend Development > PHP Tutorial > PHP global variables_PHP tutorial

PHP global variables_PHP tutorial

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-07-13 10:34:36
Original
1068 people have browsed it

<?<span php
</span><span $name</span> = "why"<span ;
</span><span function</span><span  changeName(){
    </span><span $name</span> = "what"<span ;
}<br />changeName();
</span><span echo</span> "my name is " . <span $name</span> . "<br/>"<span ;
</span>?>
Copy after login

The result of executing the code is: my name is why, instead of what is displayed after executing changeName(). Analyzing the reason, this is because the $name variable in the function body changeName is set to a local variable by default, and the scope of $name is within changeName. So, modify the code and add global variables as follows:

<?<span php
</span><span global</span> <span $name</span><span ;
</span><span $name</span> = "why"<span ;
</span><span function</span><span  changeName(){
    </span><span $name</span> = "what"<span ;
}<br />changeName();
</span><span echo</span> "my name is " . <span $name</span> . "<br/>"<span ;
</span>?>
Copy after login

Note:

 After defining the global variable, the execution result is still my name is why. This result surprised me. It turns out that the correct usage of " In other words, when a function When referencing an external variable, you can declare the variable through global within the function, so that the variable can be used in the function (equivalent to passing it in as a parameter). Then, modify the code again:

<?<span php
</span><span $name</span> = "why"<span ;
</span><span function</span><span  changeName(){
    </span><span global</span> <span $name</span><span ;
    </span><span $name</span> = "what"<span ;
}
changeName();
</span><span echo</span> "my name is " . <span $name</span> . "<br/>"<span ;
</span>?>
Copy after login

The result of this operation is: my name is what, indicating that

<?<span php
</span><span $name</span> = "why"<span ;
</span><span function</span><span  changeName(){
    </span><span global</span> <span $name</span><span ;
    </span><span $name</span> = "what"<span ;
}
</span><span function</span><span  changeName2(){
    </span><span $name</span> = "where"<span ;
}
changeName();
changeName2();
</span><span echo</span> "my name is " . <span $name</span> . "<br/>"<span ;
</span>?>
Copy after login

 

<?<span php
</span><span $name</span> = "why"<span ;
</span><span function</span><span  changeName(){
    </span><span $GLOBALS</span>['name'] = "what"<span ;
}
changeName();
</span><span echo</span> "my name is " . <span $name</span> . "<br/>"<span ;
</span>?>
Copy after login

 

<?<span php
</span><span $var1</span> = 1<span ;
</span><span $var2</span> = 2<span ;
</span><span function</span><span  test1(){
    </span><span $GLOBALS</span>['var2'] = &<span $GLOBALS</span>['var1'<span ];
}
test1();
</span><span echo</span> <span $var2</span> . "<br />"<span ;

</span><span $var3</span> = 1<span ;
</span><span $var4</span> = 2<span ;
</span><span function</span><span  test2(){
    </span><span global</span> <span $var3</span>,<span $var4</span><span ;
    </span><span $var4</span> = &<span $var3</span><span ;
}
test2();
</span><span echo</span> <span $var4</span> . "<br />"<span ;
</span>?>
Copy after login

 ; to access them. Unlike all other superglobal variables, $GLOBALS is always available in PHP. Another example:

<?<span php
</span><span $var1</span> = 1<span ;
</span><span function</span><span  test1(){
    </span><span unset</span>(<span $GLOBALS</span>['var1'<span ]);
}
test1();
</span><span echo</span> <span $var1</span> . "<br />"<span ;

</span><span $var2</span> = 1<span ;
</span><span function</span><span  test2(){
    </span><span global</span> <span $var2</span><span ;
    </span><span unset</span>(<span $var2</span><span );
}
test2();
</span><span echo</span> <span $var2</span><span ;
</span>?>
Copy after login

 

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/749824.htmlTechArticle? = "why" = "what" changeName(); "my name is " . . "br/" ? The result of executing the code is: my name is why, instead of what is displayed after executing changeName(). Analyzing the reason, this is because the function body...
Related labels:
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template