Phạm vi biến PHP
Trong PHP, các biến có thể được khai báo ở bất cứ đâu trong tập lệnh.
Phạm vi của một biến là một phần của tập lệnh trong đó biến có thể được tham chiếu/sử dụng.
PHP có ba phạm vi biến khác nhau:
- địa phương
- toàn cầu
- static
Phạm vi toàn cầu và địa phương
Một biến được khai báo bên ngoài một hàm có phạm vi toàn cầu và chỉ có thể được truy cập bên ngoài một hàm:outside a function has a GLOBAL SCOPE and can only be accessed outside a function:
Thí dụ
Biến với phạm vi toàn cầu:
?>
Hãy tự mình thử »
Một biến được khai báo trong một hàm có phạm vi cục bộ và chỉ có thể được truy cập trong chức năng đó:within a function has a LOCAL SCOPE and can only be accessed within that function:
Thí dụ
Biến với phạm vi toàn cầu:
Hãy tự mình thử »
Một biến được khai báo trong một hàm có phạm vi cục bộ và chỉ có thể được truy cập trong chức năng đó:
Biến với phạm vi cục bộ:
// Sử dụng X bên ngoài chức năng sẽ tạo ra một lỗi "biến X bên ngoài là: $ x";?>
Bạn có thể có các biến cục bộ có cùng tên trong các hàm khác nhau, bởi vì các biến cục bộ chỉ được nhận ra bởi hàm mà chúng được khai báo.
Thí dụ
echo $y; // outputs 15
?>
Hãy tự mình thử »
Một biến được khai báo trong một hàm có phạm vi cục bộ và chỉ có thể được truy cập trong chức năng đó:
Biến với phạm vi cục bộ:
Thí dụ
echo $y; // outputs 15
?>
Hãy tự mình thử »
Một biến được khai báo trong một hàm có phạm vi cục bộ và chỉ có thể được truy cập trong chức năng đó:
Biến với phạm vi cục bộ:
// Sử dụng X bên ngoài chức năng sẽ tạo ra một lỗi "biến X bên ngoài là: $ x";?>
Thí dụ
Hãy tự mình thử »
Một biến được khai báo trong một hàm có phạm vi cục bộ và chỉ có thể được truy cập trong chức năng đó:
Biến với phạm vi cục bộ: The variable is still local to the function.
// Sử dụng X bên ngoài chức năng sẽ tạo ra một lỗi "biến X bên ngoài là: $ x";?>
Phạm vi của một biến được định nghĩa là phạm vi của nó trong chương trình theo đó nó có thể được truy cập. Nói cách khác, "phạm vi của một biến là phần của chương trình được xác định và có thể được truy cập."
PHP có ba loại phạm vi biến đổi:
- Biến cục bộ
- Biến toàn cầu
- Biến tĩnh
Biến cục bộ
Biến toàn cầu
Biến tĩnh
Các biến được khai báo trong một hàm được gọi là các biến cục bộ cho hàm đó. Các biến cục bộ này chỉ có phạm vi của chúng trong hàm cụ thể mà chúng được khai báo. Điều này có nghĩa là các biến này không thể được truy cập bên ngoài hàm, vì chúng có phạm vi cục bộ.
Output:
Local variable declared inside the function is: 45
Một khai báo biến bên ngoài hàm có cùng tên khác hoàn toàn so với biến được khai báo bên trong hàm. Hãy hiểu các biến cục bộ với sự trợ giúp của một ví dụ:
Output:
Web development language: PHP Notice: Undefined variable: lang in D:\xampp\htdocs\program\p3.php on line 28
Biến toàn cầu
Biến tĩnh
Các biến được khai báo trong một hàm được gọi là các biến cục bộ cho hàm đó. Các biến cục bộ này chỉ có phạm vi của chúng trong hàm cụ thể mà chúng được khai báo. Điều này có nghĩa là các biến này không thể được truy cập bên ngoài hàm, vì chúng có phạm vi cục bộ.
Example:
Một khai báo biến bên ngoài hàm có cùng tên khác hoàn toàn so với biến được khai báo bên trong hàm. Hãy hiểu các biến cục bộ với sự trợ giúp của một ví dụ:
Output:
Variable inside the function: Sanaya Sharma Variable outside the function: Sanaya Sharma
Tệp: local_varable1.php
Example:
Tệp: local_varable2.php
Output:
Notice: Undefined variable: name in D:\xampp\htdocs\program\p3.php on line 6 Variable inside the function:
Các biến toàn cầu là các biến được khai báo bên ngoài hàm. Các biến này có thể được truy cập ở bất cứ đâu trong chương trình. Để truy cập biến toàn cầu trong một hàm, hãy sử dụng từ khóa toàn cầu trước biến. Tuy nhiên, các biến này có thể được truy cập trực tiếp hoặc sử dụng bên ngoài chức năng mà không có bất kỳ từ khóa nào. Do đó, không cần phải sử dụng bất kỳ từ khóa nào để truy cập một biến toàn cầu bên ngoài chức năng.
Hãy hiểu các biến toàn cầu với sự trợ giúp của một ví dụ:
Example:
Tệp: Global_Varable1.php
Output:
Sum of global variables is: 18
Lưu ý: Không sử dụng từ khóa toàn cầu, nếu bạn cố gắng truy cập một biến toàn cầu bên trong hàm, nó sẽ tạo ra một lỗi mà biến không được xác định.
Example:
Tệp: local_varable2.php
Output:
Các biến toàn cầu là các biến được khai báo bên ngoài hàm. Các biến này có thể được truy cập ở bất cứ đâu trong chương trình. Để truy cập biến toàn cầu trong một hàm, hãy sử dụng từ khóa toàn cầu trước biến. Tuy nhiên, các biến này có thể được truy cập trực tiếp hoặc sử dụng bên ngoài chức năng mà không có bất kỳ từ khóa nào. Do đó, không cần phải sử dụng bất kỳ từ khóa nào để truy cập một biến toàn cầu bên ngoài chức năng.
Biến tĩnh
Các biến được khai báo trong một hàm được gọi là các biến cục bộ cho hàm đó. Các biến cục bộ này chỉ có phạm vi của chúng trong hàm cụ thể mà chúng được khai báo. Điều này có nghĩa là các biến này không thể được truy cập bên ngoài hàm, vì chúng có phạm vi cục bộ.static variable.
Một khai báo biến bên ngoài hàm có cùng tên khác hoàn toàn so với biến được khai báo bên trong hàm. Hãy hiểu các biến cục bộ với sự trợ giúp của một ví dụ:
Example:
Tệp: local_varable1.php
Output:
Static: 4 Non-static: 7 Static: 5 Non-static: 7
Tệp: local_varable2.php