Создание пустого массива в PHP и последующая проверка наличия в индексе допустимых элементов

В Javascript я бы сделал что-то вроде этого

var time_array = [];
if ((previousTime > time_array[i]) || (time_array[i] === undefined) )
{
//Do Something
}

Я хочу сделать что-то подобное в PHP

$time_array = array();
if (($previousTime> $time_array[$i]) || ($time_array[$i] === undefined) ))
{
//Do Something

}

Я могу сделать это очень легко в Javascript, но я немного запутался в PHP.

0

Решение

$time_array = array();
if (!isset($time_array[$i]) || $previousTime > $time_array[$i])
{
//Do Something

}

Будет сначала проверьте, установлена ​​ли переменная и если это не так, второе условие никогда не будет оценено, поэтому его можно использовать безопасно.

Редактировать: isset() проверяет, объявлена ​​ли переменная и имеет ли она ненулевое значение. Вы можете использовать: if ($time_array[$i] === null) вместо этого (это было бы, вероятно, больше похоже на JS undefined).

1

Другие решения

Просто используйте это:
http://www.w3schools.com/php/func_array_key_exists.asp

if (array_key_exists($i,$time_array))
{
echo "Key exists!";
}
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector