Автор Тема: проверка наличия переменной  (Прочитано 7861 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Chpock

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 28
  • +0/-0
  • 0
    • Просмотр профиля
    • http://chpock.dp.ua/chat/
проверка наличия переменной
« : 03 Февраля 2002, 03:43:31 »
почему "крутые" скрипты проверяют наличие переменной так - if(isset($var)&&($var!=""))? я всю жизнь просто проверял на пустоту и все было оК..... кто прав?
W.B.R.

Оффлайн Britva

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1660
  • +0/-0
  • 0
    • Просмотр профиля
    • http://eugeny.com
проверка наличия переменной
« Ответ #1 : 03 Февраля 2002, 03:56:47 »
Chpock
ну проверишь ты на пустоту, а если тебе дают переменную пустую? причем, например, существует обработка такого варианта? ...

Если ты поставишь уровень сообщения об ошибках на E_ALL то посмотри что будет с твоим скриптом!

P.S. Кстати, и это не "крутые" скрипты, а просто правильно написаные и отлаженые...
Евгений aka Razor,

Оффлайн Patlaty

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 9
  • +0/-0
  • 0
    • Просмотр профиля
проверка наличия переменной
« Ответ #2 : 03 Февраля 2002, 05:40:05 »
для примера, в строке GET пишешь http://....smth.php?var1=aaa&var2=&var3=bbb
переменная var2 установленна, но она пустая, т.е. var2==\'\'
такие строки встречаются часто, если у тебя зараннее задан формат передачи данных, и это очень удобно, если все время работать с одной установленной структурой данных - тебе не нужно все время составлять строку при передаче в другой файл - ее гораздо легче написать сразу, а потом проверять на выходе той самой "крутой" проверкой. В определенных случаях это очень хороший стиль.

Оффлайн Chpock

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 28
  • +0/-0
  • 0
    • Просмотр профиля
    • http://chpock.dp.ua/chat/
проверка наличия переменной
« Ответ #3 : 03 Февраля 2002, 06:28:44 »
я понимаю что так проверять правильно и логично, но если я знаю что переменная не должно быть пуста, например, имя юзера и проверяю как if($username!="") - это мне чем то черевато?
W.B.R.

Оффлайн Britva

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1660
  • +0/-0
  • 0
    • Просмотр профиля
    • http://eugeny.com
проверка наличия переменной
« Ответ #4 : 03 Февраля 2002, 13:06:48 »
Chpock
Ты попробуй так включи в php.ini error_reporting=E_ALL; и увидишь скока тебе ворнингов вылетит, кстати, так же криво написаны php-nuke/xmb/....

Цитировать
я понимаю что так проверять правильно и логично, но если я знаю что переменная не должно быть пуста, например, имя юзера и проверяю как if($username!="") - это мне чем то черевато?

тогда уж if(@$username != "") чтобы не показывать ворнинги.
Евгений aka Razor,

  • Гость
проверка наличия переменной
« Ответ #5 : 24 Февраля 2002, 06:09:28 »
а чем empty не устраивает? зачем нужно isset и еще одну проверку?

if (empty($var)) {  // evaluates true
    echo "$var is either 0 or not set at all";
}

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
проверка наличия переменной
« Ответ #6 : 24 Февраля 2002, 22:20:25 »
Felenka
А просто переменная может быть не empty, однако не хранить необходимого тебе значения.
AS IS...

  • Гость
проверка наличия переменной
« Ответ #7 : 25 Февраля 2002, 03:18:04 »
ThE0ReTiC
сорри, я нечетко сформулировала мысль :)))

чем лучше

Цитировать
if ( isset($var) && ($var!="") )


или

Цитировать
if( @$username != "" )  


 и чем хуже

Цитировать
if ( !empty($var) )


?

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
проверка наличия переменной
« Ответ #8 : 25 Февраля 2002, 12:18:00 »
В принципе ничем.
AS IS...

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28