Home Backend Development PHP Tutorial Detailed explanation of PHP variable scope examples

Detailed explanation of PHP variable scope examples

Apr 27, 2017 pm 05:12 PM

What is variable scope?

When using variables, they must comply with the definition rules of variables. Variables must be used within a valid range. If the variable exceeds the limited range, the variable will be meaningless. Just like if we have one hundred yuan, we can buy things within one hundred yuan. If the item exceeds one hundred yuan, , then the one hundred yuan cannot be used. One hundred dollars is equivalent to this variable, and the range within one hundred dollars is equivalent to the scope.

PHP variables are divided into local variables, global variables and static variables due to different scopes, as shown in the following table:

Scope Explanation
Local variables The scope of a variable defined inside a function is the scope of the function where it is located
Global variables The scope of variables outside of all defined functions is the entire PHP file, but cannot be used inside user-defined functions. If you want users to use global variables inside user-defined functions, use the global keyword to declare global variables
static variables can be used in functions The variable value is retained after the call is completed, and when it returns to its scope again, the original value can continue to be used. For general variables, after the function is called, the data value stored in it will be cleared and the memory space occupied will be released. When using static variables, you must first use the keyword static to declare the variable, and put the keyword static before the variable to be defined

Detailed explanation of PHP variable scope examples A variable defined inside a function has its scope as the function in which it is located. If assigned outside the function, it will be considered a completely different variable. When exiting the function in which the variable was declared, the variable and its corresponding value are cleared.

Example

This example is used to compare variables assigned within the function (local variables) and variables assigned outside the function (global variables). The example code is as follows:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<?php

header("content-type:text/html;charset=utf-8");

 

$exam= "在函数外定义";                                     //声明全局变量

 

function add(){

 

    $exam="在函数内定义";                                //声明局部变量

    echo "在函数内输出的内容是:".$exam."<br/>";         //输出局部变量

}

add();                                                  //调用函数

echo "在函数外输出的内容是:".$exam;                    //输出全局变量

 

 

?>

Copy after login

The running results are as follows:

Detailed explanation of PHP variable scope examples

Static variables can be used in many places. For example, use static variables in a blog to record the number of visitors. Every time a user visits and leaves, the current number of visitors can be retained. Static variables can also be used in chat rooms to record user chat content.

Example

In the following example, static variables and ordinary variables are used to output a data at the same time to see the difference between the functions of the two. The code is as follows:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

<?php

function zdy0(){

    static $message = 0;           //初始化静态变量

    $message+=1;

    echo $message." ";

}

function zdy1(){

    $message = 0;           //初始化静态变量

    $message+=1;

    echo $message." ";

}

for ($i=0;$i<10;$i++)   zdy0();   //输出1~10

echo "<br>";

for ($i=0;$i<10;$i++)   zdy1(); //输出10个1

echo "<br>";

?>

Copy after login

Code running result:

Detailed explanation of PHP variable scope examples

Example details:

The custom function zdy() outputs from 1 to 10 There are 10 numbers in total, and the zdy1() function outputs 10 1., because the custom function zdy() contains the static variable $message, and $message in the function zdy1() is an ordinary variable. Both variables are initialized to 0, and the two functions are called using for loops respectively. As a result, the function zdy() retains the value in the static variable $message after being called. The initialization of static variables is only performed when the function is called for the first time, and will no longer be initialized in the future. After the function zdy1() is called, its variable $message loses its original value and is re-initialized to 0.

Global variables can be accessed anywhere in the program, but inside the user-defined function Cannot be used. If you want the user to use global variables inside a user-defined function, use the global keyword to declare the global variable

Example

The following applies global variables and Global variables should not be used for comparison. In this example, two global variables $zy and $zyy are defined. In the user-defined function lxt(), I hope to call them on lines 5 and 7, but the program output result is only the value of $zyy

"PHP Chinese website" because the global variable $zyy is declared with the global keyword on line 6. There will be no output in line 5, and $zy has nothing to do with $zy in the second line. The example code is as follows:

1

2

3

4

5

6

7

8

9

10

11

<?php

header("content-type:text/html;charset=utf-8");

$zy="你好";

$zyy="PHP中文网";

function lxt(){

    echo $zy."<br>"//$zy 不能被调用,没有输出

    global $zyy;       //利用关键字global 在函数内部说明,不说明认为是私有变量

    echo $zyy."<br>"//调用$zyy

}

lxt();

?>

Copy after login

Code running result:

Detailed explanation of PHP variable scope examples

This is the difference between applying global variables and not applying global variables. In the next section, we will explain "Variable variables"

Recommended related video tutorials: "php.cn Dugu Jiujian (4)-php video tutorial》Scope of variables

The above is the detailed content of Detailed explanation of PHP variable scope examples. For more information, please follow other related articles on the PHP Chinese website!

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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Explain JSON Web Tokens (JWT) and their use case in PHP APIs. Explain JSON Web Tokens (JWT) and their use case in PHP APIs. Apr 05, 2025 am 12:04 AM

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

PHP and Python: Comparing Two Popular Programming Languages PHP and Python: Comparing Two Popular Programming Languages Apr 14, 2025 am 12:13 AM

PHP and Python each have their own advantages, and choose according to project requirements. 1.PHP is suitable for web development, especially for rapid development and maintenance of websites. 2. Python is suitable for data science, machine learning and artificial intelligence, with concise syntax and suitable for beginners.

PHP: A Key Language for Web Development PHP: A Key Language for Web Development Apr 13, 2025 am 12:08 AM

PHP is a scripting language widely used on the server side, especially suitable for web development. 1.PHP can embed HTML, process HTTP requests and responses, and supports a variety of databases. 2.PHP is used to generate dynamic web content, process form data, access databases, etc., with strong community support and open source resources. 3. PHP is an interpreted language, and the execution process includes lexical analysis, grammatical analysis, compilation and execution. 4.PHP can be combined with MySQL for advanced applications such as user registration systems. 5. When debugging PHP, you can use functions such as error_reporting() and var_dump(). 6. Optimize PHP code to use caching mechanisms, optimize database queries and use built-in functions. 7

PHP in Action: Real-World Examples and Applications PHP in Action: Real-World Examples and Applications Apr 14, 2025 am 12:19 AM

PHP is widely used in e-commerce, content management systems and API development. 1) E-commerce: used for shopping cart function and payment processing. 2) Content management system: used for dynamic content generation and user management. 3) API development: used for RESTful API development and API security. Through performance optimization and best practices, the efficiency and maintainability of PHP applications are improved.

Explain the match expression (PHP 8 ) and how it differs from switch. Explain the match expression (PHP 8 ) and how it differs from switch. Apr 06, 2025 am 12:03 AM

In PHP8, match expressions are a new control structure that returns different results based on the value of the expression. 1) It is similar to a switch statement, but returns a value instead of an execution statement block. 2) The match expression is strictly compared (===), which improves security. 3) It avoids possible break omissions in switch statements and enhances the simplicity and readability of the code.

What is Cross-Site Request Forgery (CSRF) and how do you implement CSRF protection in PHP? What is Cross-Site Request Forgery (CSRF) and how do you implement CSRF protection in PHP? Apr 07, 2025 am 12:02 AM

In PHP, you can effectively prevent CSRF attacks by using unpredictable tokens. Specific methods include: 1. Generate and embed CSRF tokens in the form; 2. Verify the validity of the token when processing the request.

PHP's Purpose: Building Dynamic Websites PHP's Purpose: Building Dynamic Websites Apr 15, 2025 am 12:18 AM

PHP is used to build dynamic websites, and its core functions include: 1. Generate dynamic content and generate web pages in real time by connecting with the database; 2. Process user interaction and form submissions, verify inputs and respond to operations; 3. Manage sessions and user authentication to provide a personalized experience; 4. Optimize performance and follow best practices to improve website efficiency and security.

PHP vs. Python: Understanding the Differences PHP vs. Python: Understanding the Differences Apr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHP is suitable for web development, with simple syntax and high execution efficiency. 2. Python is suitable for data science and machine learning, with concise syntax and rich libraries.

See all articles