<MyRusakov.ru />

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

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

Данный курс научит Вас программировать на самом популярном Web-языке в мире - PHP. Курс состоит из 11 разделов, в которых с нуля рассказывается и показывается процесс написания различных скриптов на PHP.

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

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

Просмотрев данный курс, Вы сможете создавать абсолютно любые PHP-сайты любой сложности.

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

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

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

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

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

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

Что нового в PHP7.1: видимость констант.

Что нового в PHP7.1: видимость констант.

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

Как обычно, давайте сразу начнем с примеров.

class CarProduct {
  const VAT = 77.00;
}

class Mercedes extends CarProduct {
  //
}

$product = new Mercedes;

В таком коде мы можем получить значение константы таким образом:

echo $product::VAT;

Теперь представим, что мы не хотим, чтобы значение можно было получить таким образом, а только с помощью метода, в котором будем присоединять знак процента.

class CarProduct {
  const VAT = 77.00;

  public function getVat() {
   return self::VAT.'%';
  }
}

Теперь мы можем получить доступ таким образом:

echo $product->getVat();

Проблема в том, что константа все так же остается в открытом доступе, и мы можем получить ее значение так, как мы это делали ранее. Что мы можем сделать, чтобы заблокировать возможность получения значения константы таким образом, поскольку мы хотим, чтобы ее значение могло быть получено только с помощью метода?

Для решения этого вопроса в PHP 7.1 были добавлены уже хорошо нам знакомые ключевые слова: public, protected и private. Работают они так же, как и с переменными.

Давайте изменим наш код:

// ...
protected const VAT = 77.00;
// ...

Теперь, если мы попробуем получить доступ напрямую, то получим ошибку:

echo $product::VAT;

Но сможем получить значение константы с помощью метода. Если вы хотите, чтобы получать значение константы можно было только внутри класса, где она описана, то используйте ключевое слово private.

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

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

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

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

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

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

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

  1. Кнопка:

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

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

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

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

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

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