<MyRusakov.ru />

Создание движка на PHP и MySQL 2.0

Создание движка на PHP и MySQL 2.0

Видеокурс "Создание движка на PHP и MySQL 2.0" научит Вас создавать профессиональные движки для сайтов на PHP и MySQL с использованием ООП и паттерна MVC.

В курсе разобрана вся теория по структуре движка: как всё устроено, какие должны быть объекты, какая у них иерархия и как они взаимодействуют между собой.

В практической части будет создан движок с чистого листа. Будет создано ядро, все адаптеры, все вспомогательные классы, а также классы для работы с объектами базы данных. И чтобы курс был максимально полезным, будет создан движок для сайта MyRusakov.ru.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Reflection API. ReflectionProperty.

Reflection API. ReflectionProperty.

Мы уже рассмотрели отражение классов и отражение методов, а в этой статье мы рассмотрим отражение свойств или ReflectionProperty.

Итак, в файле index.php пропишем следующее:

<?php
  include 'user.php';

  $rp = new ReflectionProperty('Users\User', 'data');
  echo '<pre>';
  print_r(get_class_methods($rp));
  echo '</pre>';
?>

В конструктор класса ReflectionProperty первым параметром передаем название класса, а вторым - свойство в виде строки.

Если вы посмотрите, что выведет код выше, то увидите, что методов у класса ReflectionProperty не так уж и много.

<?php
  $rp->getName(); // возвращает имя свойства
  $rp->getValue(); // возвращает значение свойства
  $rp->setValue(); // устанавливает значение свойства
  $rp->isPublic(); // публичный? Если да, то вернется 1
  $rp->isProtected(); // защищенный?
  $rp->isPrivate(); // приватный?
  $rp->isStatic(); // статичный?
  $rp->isDefault(); // установлено значение по-умолчанию?
  $rp->getModifiers(); // возвращает модификаторы
  $rp->setAccessible(true); // делает свойство доступным
?>

Вот, собственно, и все, что можно рассказать про отражение свойства. Это очень простая, но полезная вещь.

Итак, на этом все. Спасибо за внимание!

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (2):

sync.o sync.o 09.06.2014 07:37:45

Не могли бы вы обрисовать, где как правило применяется Reflection API при программировании веб-приложений?

Ответить

php_programmer php_programmer 09.06.2014 14:54:42

Посмотрите в интернете примеры применения Reflection API. Самый, наверное, распространенный пример - MVC движок. Т.е., когда разбирают url такого вида: site.ru/get/article/id/3 сохраняют контроллер и метод, а потом с помощью Reflection API вызывают их и делают нужные проверки. А вообще, просто знайте, что такая возможность есть и, если Вам это будет нужно, то Вы сможете вернуться к этим статьям и применить уже на практике.

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.