<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру

PHP и MySQL с Нуля до Гуру

Данный курс - это более 20-ти часов видеоуроков по изучению PHP и MySQL. Ключевой момент курса - это создание движка для сайта с нуля. Каждая строчка комментируется. Практически для каждого урока имеются упражнения. Причём данные упражнения направлены не только на закрепление материала, но и на реализацию реальных задач, встающих перед Web-разработчиками при создании сайтов. После курса Вы сможете без проблем создавать движки для любых сайтов.

Также почти к каждому уроку идут упражнения для закрепления материала.

Просмотрев курс и выполнив упражнения, Вы сможете без проблем создавать функциональные движки для самых различных сайтов.

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

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

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

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

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

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

Как использовать интерфейс countable в PHP.

Как использовать интерфейс countable в PHP.

Всем привет! В этой статье мы рассмотрим, как использовать интерфейс для счета в PHP.

Интерфейс для счета делает ваши классы очень гибкими, если они касаются хранения элементов. Например, это даст вам возможность использовать функцию count() в PHP для объекта, чтобы вернуть некоторое посчитанное число. Совсем не важно, что это за объект, главное, что можно посчитать.

Давайте рассмотрим пример:

class Collection {
  protected $items = [];

  public function __construct(array $items) {
   $this->items = $items;
  }

  public function count() {
   return count($this->items);
  }
}

$collection = new Collection(['one', 'two', 'three']);
echo $collection->count();

Идея такая: вы имеете некоторое количество предметов, хранящееся в коллекции, вы можете передать их в конструктор при создании экземпляра объекта, вы можете иметь другие методы, которые будут добавлять предметы, но в нашем примере мы ограничимся конструктором. Дальшем мы создаем новую коллекцию, куда передаем три предмета(в нашем случае это строки). Теперь мы используем написанный нами метод count(), в котором помещаем массив в функцию count() и возвращаем результат.

Если мы запустим пример, то увидим 3, что и ожидалось. Однако использование этого интерфейса говорит нам о том, что мы не будем писать что-то вроде этого:

if($collection->count() > 0) {

}

Мы можем улучшить это, написав вот так:

if(count($collection) > 0) {

}

Это будет работать, но мы не получим ожидаемого результата, так как функция с аргументом в виде объекта вернет нам логическое значение 1.

Чтобы все начало работать так, как мы хотим, нужно всего лишь добавить наследование от интерфейса. Вот так:

class Collection implements Countable {
  // код
}

Теперь при вызове функции count() с аргументом в виде объекта автоматически будет вызываться написанный нами метод count(), и все будет работать правильно.

Countable – это очень простой, но полезный интерфейс, который позволяет легко и просто производить подсчеты. Более подробную информацию вы можете найти на официальном сайте PHP.

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

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

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

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

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

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

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

  1. Кнопка:

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

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

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

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

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

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