Странные операторы в PHP

Если вы прочитаете документацию по PHP, вы узнаете о массе операторов. Если вы не знаете ещё PHP-операторы, сперва изучите их, а потом вернитесь к прочтению этой статьи.
Операторы обычно состоят из странных символов, таких как !, -, =>, <=>, ^ or
. Действительно, некоторые из них просто читаются, например AND , в то время как некоторые из них — упущенная попытка сделать их читаемыми и скрыть их фактически двойную индивидуальность, например, xor.
Вероятно, вы думаете, что знаете документацию PHP вдоль и поперёк, но всегда найдётся, чему поучиться. Поэтому я глубоко погрузился в код ядра PHP и посмотрел некоторые особенные операторы PHP, менее известные, но очень полезные в ежедневной работе.
Итак, вот 10 операторов PHP, которые вы должны знать в 2018 году!
Оператор b’
Просто добавьте b перед любой строкой, и ничего не произойдёт. Этот ловкий трюк работает только с b и B . Здесь мы должны напомнить о судьбе PHP 6, поскольку b похож на 6 .
Оператор []=
Короткий оператор добавления нового элемента в массив. Он работает так, как вы и ожидаете — добавляет элемент справа в массив слева.
В самом деле, это намного элегантнее, чем $array[] = ‘element’; . Некоторые тесты показывают, что это намного быстрее, в то время как другие наоборот, что это намного медленнее. Как обычно, посмотрите сами, подходит ли данный оператор вам, прежде чем делать ставку на производительность подобным трюком.
К сожалению, в официальном руководстве нет ни слова об этой замечательной возможности.
Оператор <-
Оператор «левого объекта» был введен в PHP для расширения возможности написания кода, для того чтобы разработчики могли писать PHP-код справа налево. Хотя позже проект был прекращён по непонятным причинам, этот первый оператор, получивший поддержку, сохранился в PHP.
В целях обратной совместимости вышеприведённый код не получит значение свойства B в объекте $a , а просто сравнивает $a с противоположностью B .
Оператор ––>
—> также известен как «оператор супер-объекта», создан на основе своего дальнего двоюродного брата, -> .
—> работает как -> , за исключением того, что это не так. Основная хитрость: использовать не объект в качестве переменной $object , а целое число (в таком случае будет это будет работать как сравнение > — прим. пер.)
Оператор «стрелки влево» для массивов [$a <= $b]
Все мы знаем оператор => для массивов, но они также поддерживают зеркальную версию этого оператора следующим образом:
Это очень удобно для очень молодых программистов, а также тех, кто постарше, всё ещё использующих зеркальное написание. Этот оператор также имеет возможность превращать оба операнда в логическое значение, для более компактного хранения.
Имена констант с *, %
Константы хороши и эффективны, пока вам вам не захочется больше свободы в их синтаксисе. Хотя в руководстве указано, что имя константы должно содержать только буквы, символы подчёркивания и цифры, но также разрешено использовать специальные символы типа * или % в имени. Например, следующим образом:
Единственное, нужно убедиться, что константы A и B существуют, а в результате их умножения получается значение предполагаемой константы. Это ещё одна хорошая причина, чтобы избегать использование простых чисел в качестве значений в константах.
Операторы «кораблей»
Итак, все знают об операторе «космический корабль» <=> с момента выхода PHP 7. Но менее известно, что одновременно с этим релизом был введён целый флот космических кораблей для проведения крупномасштабных операций.
Крошечный космический корабль
Вы можете предоставить эскорт оператору космического корабля, используя крошечный оператор космического корабля. Этот оператор не делает сравнение: он просто добавляет $b к $a в таком изысканном стиле.
X-истребители
Если вы хотите добавить огневую мощь к предыдущему флоту, вы можете вызвать истребителей типа X к источнику PHP: +-0-+ . Следующий код вычитает 3 у $a (в оригинальной статье написано, что оператор прибавит 3 ( adds 3 to $a ), но это не так, см. вывод примера ниже — прим. пер.)
Линейный корабль
Оператор линейного корабля обеспечивает поддержку предыдущих операторов. Это один из операторов, работающий только с массивами, точно так же, как => . Его следует использовать только самым продвинутым гуру PHP на этой стороне галактики. Не стоит недооценивать его силу.
Разве не лучший способ написать так?
Звезда Смерти
Многие из вас бы спросили, а был ли встроен в PHP оператор «звезда смерти», и ответ таков: в данный момент неизвестно. Есть планы на это, но никто никогда не видел реального экземпляра. Мне бы очень хотелось видеть оператор в три строки, так как PHP будет первым, кто будем иметь подобное (и, когда это произойдёт, надеюсь, не с моего счёта спишут стоимость этого оператора).
Безумие оператора PHP
Операторы PHP — аккуратные и эффективные. Мы надеемся, что эти менее известные операторы научили вас кое-чему в PHP.
Проверьте приведённые примеры кода: все они работают в PHP 7.2.5, кроме «звезды смерти». Они могут иметь некоторые предварительные условия, поэтому обязательно прочитайте документацию перед их использованием.
Что значит ".=" в php?
Не могу найти значение символа .= (точка равно ) в php. И не могу понять, что означает $key& , конкретно зачем амперсанд в конце. Создаю функцию по удалению get -параметра из url.
![]()
Добавить в переменную
Например:
$a = ‘abc’;
$a .= ‘123’;
echo $a; //Выведит abc123
![]()
Всё ещё ищете ответ? Посмотрите другие вопросы с метками php или задайте свой вопрос.
Site design / logo © 2022 Stack Exchange Inc; user contributions licensed under cc by-sa. rev 2022.6.13.42356
Нажимая «Принять все файлы cookie», вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
PHP 5 Операторов
Операторы используются для выполнения операций над переменными и значениями.
PHP делит операторы в следующих группах:
- Арифметические операторы
- Операторы присваивания
- Операторы сравнения
- Операторы приращения/уменьшения
- Логические операторы
- Операторы строк
- Операторы массива
Арифметические операторы PHP
Арифметические операторы PHP используются с числовыми значениями для выполнения обычных арифметических операций, таких как сложение, вычитание, умножение и т.д.
| Оператор | Имя | Пример | Результат | Запуск |
|---|---|---|---|---|
| + | Addition | $x + $y | Sum of $x and $y | |
| — | Subtraction | $x — $y | Difference of $x and $y | |
| * | Multiplication | $x * $y | Product of $x and $y | |
| / | Division | $x / $y | Quotient of $x and $y | |
| % | Modulus | $x % $y | Remainder of $x divided by $y | |
| ** | Exponentiation | $x ** $y | Result of raising $x to the $y’th power (Introduced in PHP 5.6) |
Операторы присваивания PHP
Операторы присваивания PHP используются с числовыми значениями для записи значения в переменную.
Операторы сравнения PHP
Операторы сравнения PHP используются для сравнения двух значений (число или строка):
| Оператор | Имя | Пример | Результат | Запуск |
|---|---|---|---|---|
| == | Equal | $x == $y | Возвращает значение true, если $x равно $y | |
| === | Identical | $x === $y | Возвращает значение true, если $x равно $y, и они имеют одинаковый тип | |
| != | Not equal | $x != $y | Возвращает значение true, если $x не равно $y | |
| <> | Not equal | $x <> $y | Возвращает значение true, если $x не равно $y | |
| !== | Not identical | $x !== $y | Возвращает значение true, если $x не равно $y, или они не одного типа | |
| > | Greater than | $x > $y | Возвращает значение true, если $x больше $y | |
| < | Less than | $x < $y | Возвращает значение true, если $x меньше $y | |
| >= | Greater than or equal to | $x >= $y | Возвращает значение true, если $x больше или равно $y | |
| <= | Less than or equal to | $x <= $y | Возвращает значение true, если $x меньше или равно $y |
Операторы приращения/уменьшения PHP
Операторы приращения PHP используются для увеличения значения переменной.
Операторы уменьшения PHP используются для уменьшения значения переменной.
| Оператор | Имя | Описание | Запуск |
|---|---|---|---|
| ++$x | Pre-increment | Увеличивает $x на единицу, а затем возвращает $x | |
| $x++ | Post-increment | Возвращает $x, затем увеличивает $x на единицу | |
| —$x | Pre-decrement | Уменьшает $x на один, а затем возвращает $x | |
| $x— | Post-decrement | Возвращает $x, затем уменьшает $x на один |
Логические операторы PHP
Логические операторы PHP используются для комбинирования условных выражений.