П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 107 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 92978 раз(а).

Учебник HTML.
Просмотров 81544 раз(а).

Руководство по PHP5.
Просмотров 51903 раз(а).

Хостинг через призму DNS.
Просмотров 60343 раз(а).

Подборка текстов стандартных документов.
Просмотров 50527 раз(а).

Учебник PHP - Самоучитель
Просмотров 57868 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 59370 раз(а).

Внешние атаки...
Просмотров 48905 раз(а).

Учебник PHP.
Просмотров 42419 раз(а).

SSI в примерах.
Просмотров 32715 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь





Руководство по PHP
Пред. Глава 18. Classes and Objects (PHP 4) След.

Scope Resolution Operator (::)

Предостережение

The following is valid for PHP 4 and later only.

Sometimes it is useful to refer to functions and variables in base classes or to refer to functions in classes that have not yet any instances. The :: operator is being used for this.

<?php
class A {
    function
example() {
        echo
"I am the original function A::example().<br />\n";
    }
}

class
B extends A {
    function
example() {
        echo
"I am the redefined function B::example().<br />\n";
        
A::example();
    }
}

// there is no object of class A.
// this will print
//   I am the original function A::example().<br />
A::example();

// create an object of class B.
$b = new B;

// this will print
//   I am the redefined function B::example().<br />
//   I am the original function A::example().<br />
$b->example();
?>

The above example calls the function example() in class A, but there is no object of class A, so that we cannot write $a->example() or similar. Instead we call example() as a 'class function', that is, as a function of the class itself, not any object of that class.

There are class functions, but there are no class variables. In fact, there is no object at all at the time of the call. Thus, a class function may not use any object variables (but it can use local and global variables), and it may not use $this at all.

In the above example, class B redefines the function example(). The original definition in class A is shadowed and no longer available, unless you are referring specifically to the implementation of example() in class A using the ::-operator. Write A::example() to do this (in fact, you should be writing parent::example(), as shown in the next section).

In this context, there is a current object and it may have object variables. Thus, when used from WITHIN an object function, you may use $this and object variables.



Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru