Mẹo
Trang này mô tả việc sử dụng từ khóa static để xác định các phương thức và thuộc tính tĩnh. static cũng có thể được sử dụng để xác định các biến tĩnh và cho các ràng buộc tĩnh muộn. Vui lòng tham khảo các trang đó để biết thông tin về những ý nghĩa của static.
Khai báo các thuộc tính hoặc phương thức lớp là tĩnh giúp chúng có thể truy cập mà không cần khởi tạo lớp. Chúng cũng có thể được truy cập thống kê trong một đối tượng lớp khởi tạo.
Phương pháp tĩnh
Bởi vì các phương thức tĩnh có thể gọi được mà không có một thể hiện của đối tượng được tạo ra, nên việc biến giả $ này không có sẵn bên trong các phương thức được khai báo là tĩnh.
Cảnh báo
Gọi các phương thức phi tĩnh là ném một lỗi.Error.
Trước PHP 8.0.0, việc gọi các phương thức phi tĩnh được tính không thể dùng được và tạo ra cảnh báo E_DEPRECATED.E_DEPRECATED warning.
Ví dụ #1 Phương pháp tĩnh ví dụ
<?php
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?>
Tính chất tĩnh
Các thuộc tính tĩnh được truy cập bằng toán tử phân giải phạm vi (::) và không thể được truy cập thông qua toán tử đối tượng (->).
Có thể tham chiếu lớp bằng một biến. Giá trị của biến không thể là một từ khóa (ví dụ: self, parent và static).
Ví dụ #2 ví dụ thuộc tính tĩnh
static1
static2
static3Đầu ra của ví dụ trên trong Php 8 tương tự như:
foo foo Notice: Accessing static property Foo::$my_static as non static in /in/V0Rvv on line 23 Warning: Undefined property: Foo::$my_static in /in/V0Rvv on line 23 foo foo foo foo
Inkredredibl ¶ ¶
14 năm trước
static4
payal001 tại gmail dot com ¶
11 năm trước
static5
static6
static7
static8artekpuck tại gmail dot com ¶
4 năm trước
static9
Quản trị viên tại Shopinson Dot Com ¶ ¶
2 năm trước
static0
static1
static2
static3Ẩn danh ¶ ¶
17 năm trước
static4
static5
static6
static7
static8
static9
static0
static1Ẩn danh ¶ ¶
17 năm trước
static2
static3
static19 năm trước ¶
4 năm trước
static5
static6
static7
static8
static2
E_DEPRECATED0Quản trị viên tại Shopinson Dot Com ¶ ¶
2 năm trước
E_DEPRECATED1
E_DEPRECATED2
E_DEPRECATED3
static1Ẩn danh ¶ ¶
17 năm trước
E_DEPRECATED5
E_DEPRECATED6
E_DEPRECATED7
static19 năm trước ¶
Aschmidt tại Anamera Dot Net
E_DEPRECATED9
<?php
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?>
0
<?php
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?>
1
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?> 2
Rahul dot anand77 tại gmail dot com ¶ ¶
11 năm trước
<?php
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?>
3
<?php
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?>
4
<?php
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?>
5
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?> 6
artekpuck tại gmail dot com ¶
4 năm trước
<?php
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?>
7
<?php
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?>
8
<?php
class Foo {
public static function aStaticMethod() {
// ...
}
}Foo::aStaticMethod();
$classname = 'Foo';
$classname::aStaticMethod();
?>
9
Quản trị viên tại Shopinson Dot Com ¶ ¶
2 năm trước
::1
::2
::3
::4
::5
static1Ẩn danh ¶ ¶
14 năm trước
::7
::8
::9
->0
->1
->2
->3
->4
->5
->6
->7
->8
static1payal001 tại gmail dot com ¶
2 năm trước
self0
static2
self2Ẩn danh ¶ ¶
14 năm trước
self3
self4
self5
self6payal001 tại gmail dot com ¶
11 năm trước
self7
self8
self9artekpuck tại gmail dot com ¶
17 năm trước
parent0
parent1
static2
parent39 năm trước ¶
4 năm trước
parent4
parent5
self8
parent7Quản trị viên tại Shopinson Dot Com ¶ ¶
4 năm trước
parent8
parent9
static00
static01
static2
static03Quản trị viên tại Shopinson Dot Com ¶ ¶
4 năm trước
static04
static05
static06
static07Quản trị viên tại Shopinson Dot Com ¶ ¶
2 năm trước
static08
static09
static10
static11Ẩn danh ¶ ¶
17 năm trước
static12
static13
static2
static159 năm trước ¶
14 năm trước
static16
payal001 tại gmail dot com ¶
14 năm trước
static17
static06
static19payal001 tại gmail dot com ¶
2 năm trước
static20
static21
static1