За последние 24 часа нас посетили 22636 программистов и 1144 робота. Сейчас ищут 664 программиста ...

К чему приводится пустой массив в условии?

Тема в разделе "PHP для новичков", создана пользователем Вероломство, 12 апр 2022.

  1. Вероломство

    Вероломство Активный пользователь

    С нами с:
    19 июн 2017
    Сообщения:
    615
    Симпатии:
    24
    Должно отработать условие: если массив не пустой и не содержит значения, то перейти к следующей итерации цикла.

    PHP:
    1. $route->methods = []; // для примера
    2.  
    3. if ($route->methods && !in_array($request->getMethod(), $route->methods, true)) {
    4.     continue;
    5. }
    Чёт я подзабыл, потому что такие проверки очень редко попадаются с приведением массива к типу: пустой массив в ифе - это false?

    Или нужно явно !empty($route->methods) проверять?
     
  2. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    PHP: Булев - Manual (Преобразование в...)
    (среди прочих значений, которые "рассматриваются как false": массив без элементов)
    --- Добавлено ---
    В зависимости от дальнейшего использования и источника данных - можно и count(), и empty(), и даже isset()
     
    Вероломство нравится это.
  3. Вероломство

    Вероломство Активный пользователь

    С нами с:
    19 июн 2017
    Сообщения:
    615
    Симпатии:
    24
    ну с isset я бы поспорил, за ссылку спс, порешали