php: проверить, если определенный элемент в массиве пуст - PullRequest
9 голосов
/ 24 октября 2009

В PHP, как можно проверить, является ли указанный элемент (по имени, я думаю - номер также может работать) в массиве пустым?

Ответы [ 4 ]

42 голосов
/ 24 октября 2009

Типы пустых (из PHP Manual). Следующие значения считаются пустыми для любой переменной:

  • "" (пустая строка)
  • 0 (0 в виде целого числа)
  • "0" (0 в виде строки)
  • NULL
  • FALSE
  • array () (пустой массив)
  • var $ var; (объявленная переменная, но без значения в классе)

Итак, возьмите пример ниже:

$arr = array(
          'ele1' => 'test',
          'ele2' => false           
       );

1) $ arr ['ele3'] не установлено. Итак:
isset($arr['ele3']) === false && empty($arr['ele3']) === true
это не установлено и пусто. empty () проверяет, установлена ​​ли переменная и пуста.

2) $ arr ['ele2'] установлено, но пусто. Итак:
isset($arr['ele2']) === true && empty($arr['ele2']) === true

1) $ arr ['ele1'] установлено и не пусто:
isset($arr['ele1']) === true && empty($arr['ele1']) === false

Если вы хотите проверить, является ли он пустым, просто используйте функцию empty ().

9 голосов
/ 24 октября 2009
if(empty($array['item']))

или

if(!isset($array['item']))

или

if(!array_key_exists('item', $array))

в зависимости от того, что точно вы подразумеваете под "пустым". См. Документы для empty () , isset () и array_key_exists () относительно того, что именно они означают.

0 голосов
/ 21 ноября 2018

У меня была такая ситуация, когда я получал табуляцию это последний индекс массива, так что если собрать все вместе, то это может работать в большинстве случаев

<?php 

if( ctype_space($array['index'])  && empty($array['index'])  && !isset($array['index']) ){
   echo 'array index is empty';
}else{
  echo 'Not empty';
}
0 голосов
/ 12 ноября 2010
<?php

$myarray=array(1,5,6,5);

$anotherarray=array();

function checkEmpty($array){  
return (count($array)>0)?1:0;  
  }
echo checkEmpty($myarray);

echo checkEmpty($anotherarray);

?>

(для проверки пустого результата 1 или 0);

Компактность - это то, что я придерживаюсь в своем коде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...