Главная страница » PHP » 56. Оператор Элвис
Оператор Элвис, обозначаемый как ?:, представляет собой упрощённую форму тернарного оператора. Он позволяет сократить код, когда вам нужно вернуть значение по умолчанию, если выражение ложно или пусто. Этот оператор может быть полезен для улучшения читаемости и уменьшения количества кода.
Оператор Элвис имеет следующий синтаксис:
result = expression ?: default_value;
expression — выражение, которое проверяется на истинность.default_value — значение, которое будет возвращено, если expression является ложным или пустым.Оператор Элвис действует следующим образом:
expression имеет истинное значение (не равно false, 0, пустой строке "", null или пустому массиву []), то результатом выражения будет значение expression.expression имеет ложное значение, будет возвращено значение default_value.Этот оператор удобен, когда вам нужно предоставить значение по умолчанию для переменной или выражения, которое может быть пустым или ложным.
Простой пример:
В этом примере переменная $username пустая, поэтому будет использовано значение по умолчанию «Guest».
Пример с числовыми значениями:
Здесь, поскольку $score равно 0, что является ложным значением, будет использовано значение по умолчанию 50.
Пример с функцией:
Функция getUserRole() возвращает null, что является ложным значением. Поэтому оператор Элвис возвращает значение по умолчанию «user».
Оператор Элвис может возвращать значение по умолчанию в случае, если выражение имеет значение, которое интерпретируется как ложное. Это может быть неожиданно, если значения таких типов, как 0 или пустая строка, считаются истинными в других контекстах.
Пример ошибки:
Решение: Убедитесь, что вы понимаете, какие значения считаются ложными, и используйте оператор Элвис в контексте, где это значение соответствует вашим ожиданиям.
Когда expression — это массив, оператор Элвис может возвращать пустой массив, что может не соответствовать вашим ожиданиям.
Пример ошибки:
1 [1] => 2 [2] => 3 )
?>
Решение: Убедитесь, что вы правильно учитываете, как пустые массивы обрабатываются оператором Элвис.
Оператор Элвис предоставляет удобный способ обработки значений по умолчанию и упрощения кода. Он эффективен для случаев, когда вы хотите предоставить значение по умолчанию, если выражение пустое или ложное. Однако, как и любой инструмент, его нужно использовать с пониманием контекста, чтобы избежать неожиданных результатов.
Для закрепления материала выполните следующее задание:
Напишите код, который проверяет, задано ли значение переменной $email. Если нет, присвойте ей значение по умолчанию «no-reply@example.com» и выведите результат.
Создайте функцию getDiscount, которая принимает процент скидки. Если процент не указан или равен нулю, функция должна вернуть «No Discount». Используйте оператор Элвис для упрощения кода.
Реализуйте функцию getUserName, которая возвращает имя пользователя из глобальной переменной. Если имя не установлено, используйте значение по умолчанию «Anonymous» с помощью оператора Элвис.
Пример выполнения задания:
Удачи в выполнении задания и дальнейшем изучении PHP!
Телефон: +375 33 910-08-92
Email: info@codefor.tech
Адрес: г. Барановичи, ул. Пирогова, д. 7
© 2024-2025 Все права защищены. CodeFor.
Язык сайта: