2010-10-18 47 views

Trả lời

109

:: là dành cho các phần tử tĩnh trong khi -> là dành cho các phần tử mẫu.

Ví dụ:

class Example { 
    public static function hello(){ 
    echo 'hello'; 
    } 
    public function world(){ 
    echo 'world'; 
    } 
} 

// Static method, can be called from the class name 
Example::hello(); 

// Instance method, can only be called from an instance of the class 
$obj = new Example(); 
$obj->world(); 

More about the static concept

+9

Nó cũng cần lưu ý cho đầy đủ rằng 'phương pháp static' có thể được gọi trực tiếp từ một thể hiện trong cùng một cách mà bạn sẽ gọi là "dụ" phương pháp: '$ obj-> hello()' – prodigitalson

+2

anh ta hỏi tại sao nó được sử dụng trong ví dụ này, không phải là những gì nó ... – Hannes

+0

Ah tôi có thể đã hiểu lầm câu hỏi, xấu của tôi. – wildpeaks

4

Đây chỉ là ký hiệu cho thực tế là phương pháp của đối tượng và không liên quan gì đến việc sử dụng thực tế.

Trong trường hợp tài liệu bạn không xử lý đối tượng của đối tượng như $object để toán tử -> không chính xác vì bạn muốn liệt kê tên lớp thực tế. Vì vậy, sau khi sử dụng cho một phương pháp tĩnh, nơi tên lớp là tĩnh, bạn sử dụng phạm vi res. nhà điều hành :: ...

Đây thường là cách tài liệu php hoạt động cho các lớp học.

3

Mũi tên có nghĩa là addChild được gọi là thành viên của đối tượng (trong trường hợp này là $ sxe).

Dấu hai chấm có nghĩa là addChild là thành viên của lớp SimpleXMLElement.

Các vấn đề liên quan