Hướng dẫn what is the difference between local and global variables in php? - sự khác biệt giữa biến cục bộ và biến toàn cục trong php là gì?

Sự khác biệt chính giữa biến cục bộ và biến toàn cầu

  • Biến cục bộ được khai báo bên trong một hàm, trong khi biến toàn cầu được khai báo bên ngoài hàm.
  • Các biến cục bộ được tạo khi hàm đã bắt đầu thực thi và bị mất khi hàm chấm dứt, mặt khác, một biến toàn cầu được tạo khi thực thi bắt đầu và bị mất khi chương trình kết thúc.
  • Biến cục bộ không cung cấp chia sẻ dữ liệu, trong khi biến toàn cầu cung cấp chia sẻ dữ liệu.
  • Các biến cục bộ được lưu trữ trên ngăn xếp, trong khi biến toàn cầu được lưu trữ ở một vị trí cố định được quyết định bởi trình biên dịch.
  • Các tham số chuyển là cần thiết cho các biến cục bộ, trong khi đó không cần thiết cho một biến toàn cầu

Hướng dẫn what is the difference between local and global variables in php? - sự khác biệt giữa biến cục bộ và biến toàn cục trong php là gì?

Một biến là gì?

Biến là một tên gán cho một khu vực lưu trữ mà chương trình có thể thao tác. Một loại biến xác định kích thước và bố cục của bộ nhớ biến.

Nó cũng xác định phạm vi của các giá trị cần được lưu trữ bên trong bộ nhớ và bản chất của các hoạt động có thể được áp dụng cho biến đó.

Phạm vi của các biến

Phạm vi của biến chỉ đơn giản là tuổi thọ của một biến. Đó là khối mã theo đó một biến được áp dụng hoặc còn sống. Ví dụ:

function foo(){
var x;
}

Bạn tuyên bố một biến có thể thay đổi bên trong một chức năng. Phạm vi của biến đó vẫn còn bên trong hàm đó, nó có thể được sử dụng bên ngoài chức năng đó. Có ba nơi mà các biến bạn có thể khai báo ngôn ngữ lập trình biến:
There are three places where variables you can declare variable programming language:

  • Bên trong một hàm hoặc một khối: các biến cục bộ
  • Bên ngoài tất cả các chức năng: Biến toàn cầu
  • Trong định nghĩa của các tham số chức năng: Các tham số chính thức

Biến cục bộ được định nghĩa là một loại biến được khai báo trong khối lập trình hoặc chương trình con. Nó chỉ có thể được sử dụng bên trong chương trình con hoặc khối mã trong đó nó được khai báo. Biến cục bộ tồn tại cho đến khi khối của hàm được thực thi. Sau đó, nó sẽ bị phá hủy tự động. is defined as a type of variable declared within programming block or subroutines. It can only be used inside the subroutine or code block in which it is declared. The local variable exists until the block of the function is under execution. After that, it will be destroyed automatically.

Ví dụ về biến cục bộ

public int add(){
int a =4;
int b=5;
return a+b;
}

Ở đây, ‘A và và B B, là các biến cục bộ

Biến toàn cầu

Một biến toàn cầu trong chương trình là một biến được xác định bên ngoài chương trình con hoặc chức năng. Nó có phạm vi toàn cầu có nghĩa là nó giữ giá trị của nó trong suốt vòng đời của chương trình. Do đó, nó có thể được truy cập trong suốt chương trình bởi bất kỳ chức năng nào được xác định trong chương trình, trừ khi nó bị che mờ.Global Variable in the program is a variable defined outside the subroutine or function. It has a global scope means it holds its value throughout the lifetime of the program. Hence, it can be accessed throughout the program by any function defined within the program, unless it is shadowed.

Example:

int a =4;
int b=5;
public int add(){
return a+b;
}

Ở đây, ‘A và và B B, là các biến toàn cầu.

Biến cục bộ so với các biến toàn cầu

Ở đây, là một số khác biệt cơ bản giữa các biến địa phương và toàn cầu.

Tham sốĐịa phươngToàn cầu
Phạm viNó được khai báo bên trong một chức năng.Nó được tuyên bố bên ngoài chức năng.
Giá trịNếu nó không được khởi tạo, giá trị rác sẽ được lưu trữNếu nó không được khởi tạo bằng 0 được lưu trữ dưới dạng mặc định.
Cả đờiNó được tạo ra khi hàm bắt đầu thực thi và bị mất khi các chức năng chấm dứt.Nó được tạo ra trước khi chương trình thực hiện toàn cầu bắt đầu và mất khi chương trình chấm dứt.
Chia sẻ dữ liệuChia sẻ dữ liệu là không thể vì dữ liệu của biến cục bộ chỉ có thể được truy cập bằng một hàm.Chia sẻ dữ liệu là có thể vì nhiều chức năng có thể truy cập cùng một biến toàn cầu.
Thông sốCác tham số chuyển là cần thiết cho các biến cục bộ để truy cập giá trị trong hàm khácCác tham số không cần thiết cho một biến toàn cầu vì nó có thể nhìn thấy trong suốt chương trình
Sửa đổi giá trị biếnKhi giá trị của biến cục bộ được sửa đổi trong một hàm, các thay đổi không thể nhìn thấy trong một hàm khác.Khi giá trị của biến toàn cầu được sửa đổi trong một chức năng thay đổi được hiển thị trong phần còn lại của chương trình.
Truy cập bởiCác biến cục bộ có thể được truy cập với sự trợ giúp của các câu lệnh, bên trong một hàm mà chúng được khai báo.Bạn có thể truy cập các biến toàn cầu bằng bất kỳ câu lệnh nào trong chương trình.
Bộ nhớ lưu trữNó được lưu trữ trên ngăn xếp trừ khi được chỉ định.Nó được lưu trữ trên một vị trí cố định được quyết định bởi trình biên dịch.

Ưu điểm của việc sử dụng các biến toàn cầu

  • Bạn có thể truy cập biến toàn cầu từ tất cả các chức năng hoặc mô -đun trong một chương trình
  • Bạn chỉ yêu cầu khai báo biến đổi toàn cầu Biến thời gian bên ngoài các mô -đun.
  • Nó được sử dụng một cách lý tưởng để lưu trữ các hằng số trên mạng vì nó giúp bạn giữ được sự nhất quán.
  • Một biến toàn cầu rất hữu ích khi nhiều chức năng đang truy cập cùng một dữ liệu.

Ưu điểm của việc sử dụng các biến cục bộ

  • Việc sử dụng các biến cục bộ cung cấp một đảm bảo rằng các giá trị của các biến sẽ vẫn còn nguyên trong khi tác vụ đang chạy
  • Nếu một số nhiệm vụ thay đổi một biến duy nhất đang chạy đồng thời, thì kết quả có thể không thể đoán trước được. Nhưng tuyên bố nó là biến cục bộ giải quyết vấn đề này vì mỗi nhiệm vụ sẽ tạo ra ví dụ riêng của biến cục bộ.
  • Bạn có thể cung cấp các biến cục bộ cùng một tên trong các chức năng khác nhau vì chúng chỉ được nhận ra bởi hàm mà chúng được khai báo.
  • Các biến cục bộ bị xóa ngay khi bất kỳ chức năng nào kết thúc và giải phóng không gian bộ nhớ mà nó chiếm.

Nhược điểm của việc sử dụng các biến toàn cầu

  • Quá nhiều biến được tuyên bố là toàn cầu, sau đó chúng vẫn còn trong bộ nhớ cho đến khi thực hiện chương trình được hoàn thành. Điều này có thể gây ra vấn đề về bộ nhớ.
  • Dữ liệu có thể được sửa đổi bởi bất kỳ chức năng. Bất kỳ tuyên bố nào được viết trong chương trình có thể thay đổi giá trị của biến toàn cầu. Điều này có thể cho kết quả không thể đoán trước trong môi trường đa tác vụ.
  • Nếu các biến toàn cầu bị ngừng do tái cấu trúc mã, bạn sẽ cần thay đổi tất cả các mô -đun nơi chúng được gọi.

Nhược điểm của việc sử dụng các biến cục bộ

  • Quá trình gỡ lỗi của một biến cục bộ là khá khó khăn.
  • Dữ liệu phổ biến cần thiết để truyền liên tục vì không thể chia sẻ dữ liệu giữa các mô -đun.
  • Họ có một phạm vi rất hạn chế.

Điều gì hữu ích hơn?

Biến địa phương và toàn cầu quan trọng như nhau trong khi viết một chương trình bằng bất kỳ ngôn ngữ nào. Tuy nhiên, một số lượng lớn biến số toàn cầu có thể chiếm một bộ nhớ lớn. Một thay đổi không mong muốn đối với các biến toàn cầu trở nên khó khăn để xác định. Do đó, nên tránh tuyên bố các biến toàn cầu không mong muốn.

Sự khác biệt giữa biến toàn cầu và địa phương là gì?

Một biến toàn cầu là một biến có thể truy cập được trên toàn cầu. Một biến cục bộ là một biến chỉ có thể truy cập vào phạm vi hiện tại, chẳng hạn như các biến tạm thời được sử dụng trong một định nghĩa hàm duy nhất. A local variable is one that is only accessible to the current scope, such as temporary variables used in a single function definition.

Biến toàn cầu trong PHP là gì?

Các biến toàn cầu đề cập đến bất kỳ biến nào được xác định bên ngoài hàm.Các biến toàn cầu có thể được truy cập từ bất kỳ phần nào của tập lệnh, tức là bên trong và bên ngoài hàm.Vì vậy, một biến toàn cầu có thể được khai báo giống như biến khác nhưng nó phải được khai báo bên ngoài định nghĩa chức năng.any variable that is defined outside of the function. Global variables can be accessed from any part of the script i.e. inside and outside of the function. So, a global variable can be declared just like other variable but it must be declared outside of function definition.

Biến cục bộ trong PHP là gì?

Các biến cục bộ là các biến được khai báo bên trong hàm của chương trình PHP và chỉ có phạm vi của chúng bên trong hàm đó.Các biến cục bộ không có phạm vi bên ngoài hàm (biến không thể được tham chiếu bên ngoài hàm), do đó không thể được sử dụng bên ngoài phạm vi của nó trong chương trình.those variables that are declared inside the function of a Php program and have their scope inside that function only. Local variables have no scope outside the function (variable cannot be referenced outside the function), so cannot be used outside its scope in the program.

Sự khác biệt giữa phạm vi địa phương và toàn cầu là gì?

Các biến toàn cầu rất hữu ích cho các giá trị tương đối ổn định hoặc nhiều hàm trong tập lệnh phải truy cập, chẳng hạn như ID phiên.Tuy nhiên, một biến cục bộ có phạm vi giới hạn: nó chỉ tồn tại trong khối mà nó được khai báo. Một khi khối đó kết thúc, biến bị phá hủy và các giá trị của nó bị mất.