Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: isset на пустой аргумент функции не работает.
 
 автор: Гость   (30.04.2008 в 20:47)   письмо автору
 
 

Есть код:
<?
function form_name ($name)
{
  if (isset (
$name))
  {
    echo 
'тарм';
  }
  else
  {
    echo 
'';
  }
}
form_name ('');
//Выводит "трам"
?>


Почему не работает? Пришлось заменить isset ($name) на $name != '' и все заработало как должно, но почему не работает в первом случае?

Апдейт - конструкция !empty тоже работает как положено.

   
 
 автор: Director_Of_Zoo   (30.04.2008 в 20:58)   письмо автору
 
   для: Гость   (30.04.2008 в 20:47)
 

потому что $name у тебя определена, а isset() проверяет существование переменной. В твоём случае используй empty()

   
 
 автор: Atheist   (30.04.2008 в 21:39)   письмо автору
 
   для: Гость   (30.04.2008 в 20:47)
 

По умолчанию сделай NULL:
> function form_name ($name = NULL)
И можешь использовать isset().

   
 
 автор: AcidTrash   (01.05.2008 в 01:44)   письмо автору
 
   для: Гость   (30.04.2008 в 20:47)
 

-

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования