“Не-не” отрицательный php-хинт

Сейчас занят запуском одного блога на игровую тематику, а так же пошли уже первые клиенты с курса Сергея Жуковского, что радует. Практикуюсь в быстрой и качественной настройке WordPress.
Чтобы вы не скучали напишу небольшой php-хинт, который, мне кажется, понравится изучающим этот язык. Во всяком случае мне он показался забавным и не лишённым изысканности)


Кто из вас не встречал подобный php-код?

Всё очень просто — требуется вернуть булевое значение (true/false), только проблема в том, что сама переменная $foo не обязательно булевого типа, поэтому нельзя вернуть её напрямую.

Вариант 1, приводим его к булевому значению

Вариант 2, приводим его к булевому значению (укороченный вариант)

Вариант 3, двойное-отрицание!!!

Первое отрицание (оператор не — !) приводит $foo к отрицательному булевому значению, т.е. false, а следующее «не» переворачивает уже к изначальному значению, но в булевом виде).

И напоследок — не сложно догадаться, что если вам нужно вернуть true, когда передаваемая переменная false, то убираем одно «не»:

Вот и всё, надеюсь вам понравилось;-)

“Не-не” отрицательный php-хинт: 2 комментария

  1. Интересно бы ещё оценить варианты с точки зрения производительности. Понятное дело, что на практике разницы заметно не будет, просто любопытно. Для интерпретации с умной JIT компиляцией скорее всего результат будет одинаковый. Без оптимизации исходный вариант скорее всего равен вариантам 1-2, а вот 3 будет подольше. Ну и с точки зрения читабельности вариант 3 — не вариант 🙂

Добавить комментарий