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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





Руководство по PHP
Пред. Глава 19. Классы и объекты (PHP 5) След.

::

"Paamayim Nekudotayim" или просто "двойное двоеточие". Используя эту лексему, программист может обращаться к константам, статическим или перегруженным свойствам или методам класса.

При обращении к этим элементам извне класса, программист должен использовать имя этого класса.

"Paamayim Nekudotayim" на первый взгляд может показаться странным словосочетанием для обозначения двойного двоеточия. Однако, во время создания Zend Engine версии 0.5 (который входил в PHP3), Andi и Zeev выбрали именно это обозначение. "Paamayim Nekudotayim" действительно значит "двойное двоеточие". На иврите. Просто это обозначение не менялось ни разу в течение всего времени разработки PHP.

Пример 19-11. Использование :: вне объявления класса

<?php
class MyClass {
  const
CONST_VALUE = 'Значение константы';
}
echo
MyClass::CONST_VALUE;
?>

Для обращения к свойствам и методам в объявлении класса используются ключевые слова self и parent.

Пример 19-12. Использование :: в объявлении класса

<?php
class OtherClass extends MyClass {
  
public static $my_static = 'статическая переменная';

  
public static function doubleColon() {
     echo
parent::CONST_VALUE . "\n";
     echo
self::$my_static . "\n";
  }
}

OtherClass::doubleColon();
?>

Когда дочерний класс перегружает методы, объявленные в классе-родителе, PHP не будет осуществлять автоматический вызов методов, принадлежащих классу-родителю. Этот функционал возлагается на метод, перегружаемый в дочернем классе. Данное правило распространяется на конструкторы и деструкторы, перегруженные и "волшебные" методы.

Пример 19-13. Обращение к методу в родительском классе

<?php
class MyClass {

  
protected function myFunc() {
    echo
"MyClass::myFunc()\n";
  }
}

class
OtherClass extends MyClass {

  
/* Override parent's definition */
  
public function myFunc() {

    
/* But still call the parent function */
    
parent::myFunc();
    echo
"OtherClass::myFunc()\n";
  }
}

$class = new OtherClass();
$class->myFunc();
?>


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





Copyright © 2005-2016 Project.Net.Ru