Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Проверка существования переменной
Форумы портала PHP.SU » » Хранение данных, их вывод и обработка » Проверка существования переменной

Страниц (1): [1]
 

1. Crazy_maker - 06 Мая, 2011 - 21:10:39 - перейти к сообщению
Не понял
Скажите плиз почему при проверке существования переменной
If (isset $sputnik):
Выводиться сообщение о неправильном символе : если того требуют строгие каноны оформления рнр ?
И еще один вопрос как можно проверить есть ли куки, чтобы выполнять дальнейшие действия от результата? Растерялся
2. EuGen - 06 Мая, 2011 - 21:20:15 - перейти к сообщению
if(isset($sputnik))
3. OrmaJever - 06 Мая, 2011 - 21:26:43 - перейти к сообщению
Crazy_maker пишет:
как можно проверить есть ли куки, чтобы выполнять дальнейшие действия от результата?

Всё куки ежат в глобальном масиве $_COOKIE с именами индексами. Посмотреть все куки можно

а проверить конкретную
4. molchun201 - 06 Мая, 2011 - 21:32:15 - перейти к сообщению
тривиальный вопрос для EuGen и OrmaJever и всех пользователей

а зачем в if писать isset() для проверки? Однако



Разве это не одно и тоже?
PHP:
скопировать код в буфер обмена
  1. if($_COOKIE['name']) ...


и if и isset() - возвращают булево значение

Так зачем собсно грузить код? Растерялся

PS моё предположение, для явного чтения Растерялся
5. EuGen - 06 Мая, 2011 - 21:37:45 - перейти к сообщению
Потому что переменная может быть равна false при приведении к булевому типу. Это не одно и то же, что она не определена.
Иными словами:
PHP:
скопировать код в буфер обмена
  1.  
  2. $v0='';
  3. $v1=0;
  4. $v2=false;
  5. if(!isset($v))
  6. {
  7.    echo('$v не определена');
  8. }
  9. if(!isset($v0))
  10. {
  11.    echo('$v0 не определена');
  12. }
  13. if(!$v0)
  14. {
  15.    echo('$v0 равна false при приведении к boolean');
  16. }
  17. if(!isset($v1))
  18. {
  19.    echo('$v1 не определена');
  20. }
  21. if(!$v1)
  22. {
  23.    echo('$v1 равна false при приведении к boolean');
  24. }
  25. if(!isset($v2))
  26. {
  27.    echo('$v2 не определена');
  28. }
  29. if(!$v2)
  30. {
  31.    echo('$v2 равна false при приведении к boolean');
  32. }
  33.  

 

Powered by ExBB FM 1.0 RC1