Проверьте, пусты ли поля массива в PHP

Мне нужно проверить, пусты ли поля в массиве. Я хотел бы знать, есть ли в PHP какая-либо функция, которая делает это. Я пробовал empty(), но поскольку он проверяет, пуст ли массив, он возвращает false, потому что в массиве есть поля.

Ниже приведен следующий массив:

"wm" => array:7 [▼
    "make" => null
    "model" => null
    "version" => null
    "portal_plan_id" => null
    "portal_highlight_id" => null
    "price_type_id" => null
    "announce" => null
  ]

Посмотрите, что это значения null, и это те, которые мне нужно проверить.

Спасибо!

Это англоязычный сайт. Вы можете увидеть, поддерживает ли этот сайт или этот сайт ваш язык.

0xCursor 22.06.2018 20:14

Мне очень жаль, я не заметил, что спрашивал не на том веб-сайте.

Adriano Vianna 22.06.2018 20:24

Круто, круто, ну теперь это похоже на законный вопрос.

0xCursor 22.06.2018 20:29

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

N Mahurin 22.06.2018 21:08

каждое значение @NMahurin

Adriano Vianna 22.06.2018 21:59

Какое поле вы хотите проверить?

amirz98 22.06.2018 22:18
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
6
533
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

В зависимости от того, что вам нужно, есть два способа сделать это. Если вы хотите узнать, равны ли значения любой нулю: http://php.net/manual/en/function.array-search.php

array_search(null, $array)

Array_search вернет false, если ни один из ключей не является нулевым. Так ты можешь сделать

if (array_search(null, $array) !== false){
    // There is at least one null value
}

Если вы хотите узнать, какие ключи содержат нулевое значение: http://php.net/manual/en/function.array-keys.php

array_keys($array, null)

Array_keys предоставит все ключи с нулевым значением. Так что вы можете проверить

if (count(array_keys($array, null)) > 0){
    // There is at least one null value. array_keys($array, null) can retrieve the keys that are null
}
$array = [
     'make' => KIA,
     'model' => Koup,
     'version' => 5.0,
     'portal_plan_id' => null 
];

if (in_array(null, $array)){
    // do something
}

Вышеупомянутое проверяет, есть ли хотя бы одно нулевое значение, в этом случае оно будет оцениваться как истинное.

$array = [
   'make' => null,
   'model' => null,
   'version' => null,
   'portal_plan_id' => null  
];

if (count(array_unique($array)) == 1 && array_unique($array)['make'] == null)
{        
       //do something
}

Где ['make'] - ваш первый индекс, вы можете выбрать любой индекс. Вышеупомянутое будет истинным. Вот как это работает; он проверяет, совпадают ли все значения (array_unique ($ array)) == 1) и является ли первое значение нулевым (array_unique ($ array) ['make'] == null). По логике, если первое значение равно нулю, а все значения одинаковы, можно сделать вывод, что все значения равны нулю.

Другие вопросы по теме