korpus
злой бобёр
Как выполнить условие, если переменная не существует в скрипте
Допустим, в какой-то части скрипта мы не знаем, существует ли переменная или нет. Если она не существует (никогда не было $a=...), то мы хотим выполнить некоторые условия. Используется версия php 5.2.4
Но если переменная $a в начале скрипта будет уничтожена unset($a), то при уровне вывода ошибок E_ALL | E_STRICT php выдаст ошибку "Обращение к несуществующей переменной".
Notice: Undefined variable: a in Z:\home\localhost\www\1.php on line 10
Т.е. скрипт работает некорректно и в случае чего будет выводить в браузер сообщения об ошибке.
Возникает вопрос, есть ли функция, позволяющая возвращать TRUE, если переменная $a равна NULL и FALSE, если такая переменная не существует вовсе?
is_null здесь также не подходит, т.к. если будет unset($a), то is_null($a) опять вызовет ошибку
Допустим, в какой-то части скрипта мы не знаем, существует ли переменная или нет. Если она не существует (никогда не было $a=...), то мы хотим выполнить некоторые условия. Используется версия php 5.2.4
Код:
<?php
ini_set('display_errors', '1');
ini_set('error_reporting', E_ALL | E_STRICT);
$a=TRUE;
// До этого момента мы не знаем значение переменой $a. Она может быть даже не установлена ( unset($a) ).
// В зависимости от того, есть она или нет, требуется выполнить какие-то операции
// unset($a); переменной может не существовать вовсе
if (isset($a)
OR $a===NULL)
{
// операции здесь выполнятся только если переменная $a установлена или равна NULL (а также TRUE или FALSE)
echo 'переменная существует!';
}
else
{
echo 'переменная не инициализированна';
}
?>
Notice: Undefined variable: a in Z:\home\localhost\www\1.php on line 10
Т.е. скрипт работает некорректно и в случае чего будет выводить в браузер сообщения об ошибке.
Возникает вопрос, есть ли функция, позволяющая возвращать TRUE, если переменная $a равна NULL и FALSE, если такая переменная не существует вовсе?
is_null здесь также не подходит, т.к. если будет unset($a), то is_null($a) опять вызовет ошибку
