Làm cách nào để gọi biến tĩnh trong PHP?

Đôi khi có thể cần một biến tĩnh trong hàm PHP; . [Nếu hàm được chứa trong một lớp, tốt hơn bạn nên sử dụng biến lớp riêng hoặc lớp được bảo vệ thay vì biến tĩnh bên trong hàm]

Ví dụ mã PHP

Ví dụ mã PHP bên dưới hiển thị một hàm sử dụng biến tĩnh. Khi hàm được gọi lần đầu, nó sẽ không có giá trị được đặt nên nó được khởi tạo với bit = 0 và sau đó tăng dần trong mỗi lần gọi tiếp theo. Lưu ý rằng nó không cần phải là một số nguyên;

Các hàm tĩnh và các lớp tĩnh có thể dễ dàng truy cập mà không nhất thiết phải tạo một thể hiện của lớp đó. Điều này giúp giữ cho mã của bạn sạch sẽ và có tổ chức

Trong bài đăng này, bạn sẽ tìm hiểu về từ khóa

MyClass::someStaticMethod[];
0 và cách nó được áp dụng cho các hàm và lớp để làm cho chúng trở nên tĩnh. Sau đó, tôi sẽ giải thích lý do tại sao bạn có thể muốn triển khai các hàm và lớp tĩnh trong PHP

Cuối cùng, bạn sẽ hiểu cách tạo các hàm và biến trong một lớp tĩnh, cách truy cập các thành viên tĩnh này và khi nào khai báo các thành viên lớp là tĩnh

Sử dụng từ khóa
MyClass::someStaticMethod[];
0 với phương thức hoặc biến

MyClass::someStaticMethod[];
0 là một từ khóa đặc biệt trong PHP. Khi nó được sử dụng trên các phương thức hoặc thuộc tính của lớp, nó cho phép chúng được truy cập trên chính lớp đó thay vì trên một thể hiện của lớp cụ thể đó. Vì vậy, thay vì viết

$object = new MyClass[];
$object.someMethod[];

Chúng tôi có thể viết

MyClass::someStaticMethod[];

Do đó, bất cứ khi nào một phương thức được khai báo là tĩnh, nó có thể dễ dàng được truy cập mà không cần tạo đối tượng cho lớp

Tất nhiên, điều này chỉ hoạt động đối với các phương thức không cần sử dụng bất kỳ dữ liệu nào từ các thể hiện của một lớp. Khai báo một phương thức là tĩnh giới hạn nó để truy cập các phương thức tĩnh và các biến tĩnh

Khai báo một hàm tĩnh và một biến tĩnh

Đoạn mã dưới đây khai báo một hàm có tên

MyClass::someStaticMethod[];
3 là tĩnh bằng cách thêm từ khóa
MyClass::someStaticMethod[];
0 trước tên của hàm. Thuộc tính có tên
MyClass::someStaticMethod[];
5 cũng được tạo tĩnh bằng cách bao gồm từ khóa
MyClass::someStaticMethod[];
0 trước tên của nó. Khi tham chiếu thuộc tính trong hàm tĩnh, toán tử phân giải phạm vi
MyClass::someStaticMethod[];
7 và từ khóa
MyClass::someStaticMethod[];
8 được sử dụng

Một phương thức tĩnh không thể truy cập một biến không tĩnh hoặc các phương thức không tĩnh vì chúng yêu cầu một thể hiện của lớp được tạo

MyClass::someStaticMethod[];
1

Đầu ra cho đoạn mã trên sẽ là

MyClass::someStaticMethod[];
2

Tuy nhiên, một phương thức tĩnh có thể được truy cập bằng một phương thức không tĩnh trong cùng một lớp bằng cách sử dụng

MyClass::someStaticMethod[];
9

MyClass::someStaticMethod[];
4

Khi bạn tạo một thể hiện mới của lớp, hàm tạo sẽ gọi hàm tĩnh và xuất ra 

MyClass::someStaticMethod[];
10

Bạn cũng có thể truy cập một phương thức tĩnh trong một lớp từ một lớp khác bằng cách đặt phương thức tĩnh ở chế độ công khai

MyClass::someStaticMethod[];
6

Mã này sẽ xuất ra

MyClass::someStaticMethod[];
7

Một phương thức tĩnh cũng có thể được gọi từ một lớp con [khái niệm kế thừa] bằng cách sử dụng từ khóa

MyClass::someStaticMethod[];
11 trong lớp con. Trong trường hợp này, phương thức tĩnh có thể là công khai hoặc được bảo vệ

Nếu bạn muốn sử dụng một phương thức tĩnh trong các lớp con, nhưng không phải từ bên ngoài lớp, bạn có thể khai báo phương thức đó bằng từ khóa

MyClass::someStaticMethod[];
12

MyClass::someStaticMethod[];
0

Trong đoạn mã trên, lớp con—

MyClass::someStaticMethod[];
13—kế thừa từ lớp cha
MyClass::someStaticMethod[];
14. Trong lớp con là một biến được khai báo công khai được truy cập trong phương thức khởi tạo không tĩnh
MyClass::someStaticMethod[];
15. Phương thức tĩnh
MyClass::someStaticMethod[];
16 sau đó được truy cập bằng
MyClass::someStaticMethod[];
17. Địa chỉ IP được trả về làm đầu ra

lớp tĩnh

Về cơ bản, một lớp là một kiểu dữ liệu độc lập và khép kín có thể chứa các thành viên dữ liệu được gọi là thuộc tính và hàm thành viên chỉ có thể được truy cập bằng cách khởi tạo một thể hiện của lớp đó

Khai báo một lớp là tĩnh cho phép các giá trị mà nó giữ nguyên cho mọi phiên bản của lớp đó. Mặt khác, một lớp không tĩnh có thể có các giá trị thuộc tính khác nhau cho từng trường hợp

Cách tạo một lớp tĩnh

Một lớp trở nên tĩnh khi các biến và phương thức được định nghĩa bên trong nó được tạo thành tĩnh bằng cách sử dụng từ khóa tĩnh

Một lớp tĩnh và [các] phương thức tĩnh được xác định của nó có thể được truy cập bằng cách sử dụng tên lớp, toán tử

MyClass::someStaticMethod[];
7 [độ phân giải phạm vi] và tên phương thức, như được hiển thị trong đoạn trích bên dưới

MyClass::someStaticMethod[];
7____28

Trong chương trình trên, chúng ta đã biến cả biến

MyClass::someStaticMethod[];
19 và hàm
MyClass::someStaticMethod[];
20 thành tĩnh. Hãy nhớ rằng, bạn chỉ có thể truy cập các biến tĩnh từ các hàm tĩnh và theo cách đó, chúng ta sẽ không phải khởi tạo lớp tại bất kỳ thời điểm nào. Thực sự dễ dàng hơn rất nhiều khi làm việc với các biến và hàm tĩnh theo nghĩa là chức năng chung được cung cấp và thông tin được sử dụng không dành riêng cho một học sinh. Lưu ý rằng khi truy cập các biến
MyClass::someStaticMethod[];
21 và
MyClass::someStaticMethod[];
22 không tĩnh, chúng tôi đã trả về chúng bằng cách sử dụng từ khóa
MyClass::someStaticMethod[];
23 và mũi tên
MyClass::someStaticMethod[];
24 để ngụ ý rằng chúng là các thể hiện của lớp
MyClass::someStaticMethod[];
25

Vì vậy, về cơ bản, sự khác biệt chính giữa các thành viên tĩnh và các lớp, phương thức và biến thông thường khi chúng được truy cập là việc sử dụng dấu hai chấm

MyClass::someStaticMethod[];
7 thay vì toán tử mũi tên
MyClass::someStaticMethod[];
24

Sự kết luận

Trong bài viết này, bạn đã học cách sử dụng các hàm tĩnh và lớp tĩnh, đồng thời hy vọng bạn sẽ quan tâm đến việc tìm hiểu thêm về các khái niệm này trong tương lai. Khái niệm tĩnh trong PHP và mọi thứ liên quan đến nó sẽ rõ ràng hơn bao giờ hết. Mã hóa vui vẻ

Làm cách nào để sử dụng tĩnh trong PHP?

Từ khóa tĩnh được sử dụng để khai báo các thuộc tính và phương thức của một lớp là tĩnh . Các thuộc tính và phương thức tĩnh có thể được sử dụng mà không cần tạo một thể hiện của lớp. Từ khóa tĩnh cũng được sử dụng để khai báo các biến trong hàm giữ nguyên giá trị của chúng sau khi hàm kết thúc.

PHP có biến tĩnh không?

Giới thiệu. Lớp tĩnh trong PHP là loại lớp chỉ được khởi tạo một lần trong chương trình. Nó phải chứa thành viên tĩnh [biến] hoặc hàm thành viên tĩnh [phương thức] hoặc cả hai . Các biến và phương thức được truy cập mà không cần tạo đối tượng, sử dụng toán tử phân giải phạm vi [. ].

Phương thức tĩnh được gọi như thế nào trong PHP?

Để thêm phương thức tĩnh vào lớp, từ khóa tĩnh được sử dụng. Chúng có thể được gọi trực tiếp bên ngoài lớp bằng cách sử dụng toán tử phân giải phạm vi [. ] như sau. Lớp học của tôi. kiểm tra[];

Tĩnh [] mới trong PHP là gì?

Tĩnh mới. Tĩnh là một từ khóa trong PHP . Tĩnh trong PHP 5. 3 liên kết tĩnh muộn, đề cập đến bất kỳ lớp nào trong cấu trúc phân cấp mà bạn đã gọi phương thức trên. Cách sử dụng tĩnh phổ biến nhất là để xác định các phương thức tĩnh.

Chủ Đề