if(empty($_GET['message']))
{
.....
}
или
if(isset($_GET['message']))
{
......
}
Спустя 5 минут, 10 секунд (3.04.2011 - 15:30) inpost написал(а):
kmaks
Из разряда: как правильно писать:
mysql_fetch_assoc();
или
print_r();
Я это к тому, что каждому своё место, существует или пустое - по ситуации.
Из разряда: как правильно писать:
mysql_fetch_assoc();
или
print_r();
Я это к тому, что каждому своё место, существует или пустое - по ситуации.
Спустя 51 секунда (3.04.2011 - 15:31) sharki написал(а):
Всё в дном =)
if(isset($_GET['message']) and !empty($_GET['message'])) {
....
}
Спустя 4 минуты, 46 секунд (3.04.2011 - 15:36) Snus написал(а):
Если написать
И при этом $_POST test не будет объявлен, то в нотисе выдаст ошибку :)
Так что, sharki самый верный вариант написал.
if(empty($_POST['test'])) echo 'empty test';
И при этом $_POST test не будет объявлен, то в нотисе выдаст ошибку :)
Так что, sharki самый верный вариант написал.
Спустя 1 минута, 51 секунда (3.04.2011 - 15:38) neadekvat написал(а):
Можно и
Нотайсов не будет.
Или
Нотайстов тоже не будет.
С @ надо быть аккуратным.
if(empty(@$_POST['test'])) echo 'empty test';
Нотайсов не будет.
Или
$_POST['test'] = isset($_POST['test']) ? $_POST['test'] : null;
if(empty($_POST['test'])) echo 'empty test';
Нотайстов тоже не будет.
С @ надо быть аккуратным.
Спустя 2 минуты, 9 секунд (3.04.2011 - 15:40) Snus написал(а):
neadekvat
Все правильно, только собачек советовать я бы не стал.
Отсюда вердикт - изсет нужно использовать для объявления переменных, а эмпти для проверки на 0 и ''
Все правильно, только собачек советовать я бы не стал.
Отсюда вердикт - изсет нужно использовать для объявления переменных, а эмпти для проверки на 0 и ''
Спустя 7 часов, 53 минуты, 13 секунд (3.04.2011 - 23:33) kirik написал(а):
Ребят, почему вы решили что empty будет выдавать нотис, если переменная не определена?
в комментах номера строчек. Получаем:
тоесть ошибка тут одна, и это когда не объявленная переменная используется просто так..
/*1*/ error_reporting(E_ALL);
/*2*/ var_dump($test1);
/*3*/ var_dump(empty($test2));
/*4*/ var_dump(isset($test3));
в комментах номера строчек. Получаем:
Notice: Undefined variable: test1 in /home/kirik/Www/index.php on line 2
NULL
bool(true)
bool(false)
тоесть ошибка тут одна, и это когда не объявленная переменная используется просто так..
Спустя 3 минуты, 49 секунд (3.04.2011 - 23:37) neadekvat написал(а):
kirik, так это же еще лучше Промазали, да.
Но так, чисто по логике, проверять значение переменной, которая даже не объявлена - не самое лучшее действие. Не надо так делать, имхо.
Но так, чисто по логике, проверять значение переменной, которая даже не объявлена - не самое лучшее действие. Не надо так делать, имхо.
Спустя 3 минуты, 29 секунд (3.04.2011 - 23:41) quickxyan написал(а):
помню когда-то тут уже была такая тема.
для того, чтобы узнать есть ли переменная надо пильзоватся isset, если проверить её на содержимое, то empty
для того, чтобы узнать есть ли переменная надо пильзоватся isset, если проверить её на содержимое, то empty
Спустя 16 минут, 10 секунд (3.04.2011 - 23:57) kirik написал(а):
Вы почитайте про особенноести isset:
$test1 = null; // мы определили переменную <----------??????-------------
echo "NULL\n"; // |
var_dump(empty($test1)); // получаем true - она пустая |
var_dump(isset($test1)); // получаем false - т.е. она не определена!?? /
Спустя 3 минуты, 43 секунды (4.04.2011 - 00:00) neadekvat написал(а):
kirik, php не заставит нас скучать.. Ладно хоть при значении '', а не null, работает как надо.
Спустя 4 часа, 20 минут, 30 секунд (4.04.2011 - 04:21) mrpsyx написал(а):
слушай sharki, он правильно тебе подсказал, я кстати тоже так делаю...
Спустя 3 минуты, 19 секунд (4.04.2011 - 04:24) kirik написал(а):
Цитата (mrpsyx @ 3.04.2011 - 20:21) |
он правильно тебе подсказал, я кстати тоже так делаю |
Топик почитайте... В ответе sharki получается "масло масляное".
Спустя 10 минут, 39 секунд (4.04.2011 - 04:35) mrpsyx написал(а):
да все нормально там.... почитал и ничего не нашел, там рассматривался вопрос о том не выдаст ли notice:
так что можно isset и не использовать
<?php
print empty($test); // выдает 1
так что можно isset и не использовать
Спустя 7 минут, 15 секунд (4.04.2011 - 04:42) kirik написал(а):
Цитата (mrpsyx @ 3.04.2011 - 20:21) |
слушай sharki, он правильно тебе подсказал, я кстати тоже так делаю... |
Цитата (mrpsyx @ 3.04.2011 - 20:35) |
почитал и ничего не нашел |
Цитата (mrpsyx @ 3.04.2011 - 20:35) |
так что можно isset и не использовать |
Отказываюсь вас понимать
Спустя 2 минуты, 20 секунд (4.04.2011 - 04:44) mrpsyx написал(а):
ну ладно....
Спустя 32 минуты, 56 секунд (4.04.2011 - 05:17) ИНСИ написал(а):
вообще, можно и так сделать:
if($_GET['message'] && $_GET['message'] <> '')
echo $_GET['message'];
else
echo 'empty';
Спустя 4 минуты, 4 секунды (4.04.2011 - 05:21) kirik написал(а):
Цитата (velbox @ 3.04.2011 - 21:17) |
вообще, можно и так сделать |
Да чтож вы издеваетесь сегодня все?
Спустя 4 минуты, 30 секунд (4.04.2011 - 05:26) ИНСИ написал(а):
Цитата |
Да чтож вы издеваетесь сегодня все? |
Нет конечно же Я просто для разнообразия написал .... По поводу ноутисов с тобой полностью согласен.
Спустя 26 минут, 24 секунды (4.04.2011 - 05:52) glock18 написал(а):
kirik
Цитата (velbox @ 4.04.2011 - 02:26) |
Нет конечно же Я просто для разнообразия написал .... По поводу ноутисов с тобой полностью согласен. |
и продолжают издеваться
по теме:
почитали бы хоть что такое empty, и не городили бы огород из isset + !empty. использовать их в одном месте - все равно, что масло масленое, как правильно сказал kirik - по ушам за такое надо давать.
Спустя 59 минут, 6 секунд (4.04.2011 - 06:51) kirik написал(а):
Цитата (glock18 @ 3.04.2011 - 21:52) |
по ушам за такое надо давать |
Эх, Василий, твои бы слова да в дело!... И вот за такое тоже $_GET['message'] <> ''
Спустя 1 час, 47 минут, 39 секунд (4.04.2011 - 08:39) linker написал(а):
array_key_exists() и не мучайте себе голову. Через $_GET или $_POST значение null не передать, а потому бояться казуса
$a = null;не стоит. Но нулевое значение или пустое передать можно и тогда используя empty() можно нарваться на логическую ошибку.
isset($a);
Спустя 50 минут, 23 секунды (4.04.2011 - 09:29) Игорь_Vasinsky написал(а):
ВОт так.....
запрос может быть передан, но может быть пустым, и тогда истены
и
isset - указывает на существование запроса
empty - на то что запрос есть, но пустой.
Совершенно разные вещи..
запрос может быть передан, но может быть пустым, и тогда истены
empty($_GET['message'])
и
isset($_GET['message'])
isset - указывает на существование запроса
empty - на то что запрос есть, но пустой.
Совершенно разные вещи..
Спустя 1 час, 4 минуты, 35 секунд (4.04.2011 - 10:34) ИНСИ написал(а):
Цитата |
И вот за такое тоже $_GET['message'] <> '' |
чем тебе такой вариант не понравился?
Спустя 25 минут, 3 секунды (4.04.2011 - 10:59) kirik написал(а):
Цитата (velbox @ 4.04.2011 - 02:34) |
чем тебе такой вариант не понравился? |
Тем что:
- в контексте топика он не верен
- $_GET['message'] <> '' абсолютно лишнее, хватит и if($_GET['message'])
- ты используешь <>
Спустя 49 минут, 33 секунды (4.04.2011 - 11:49) Guest написал(а):
Ребята, по сути это разные функции и для разных целей.
isset - проверяет, что переменная (элемент массива/объекта) объявлена, и не важно, пустая она или нет
empty - проверяет, является ли переменная (элемент массива/объекта) пустой, т.е. равной null, false, 0, 0.0, '', '0' или array().
Вызов несуществующего элемента даст null, поэтому empty($_POST['несуществующийИндекс']) вернёт true
isset - проверяет, что переменная (элемент массива/объекта) объявлена, и не важно, пустая она или нет
empty - проверяет, является ли переменная (элемент массива/объекта) пустой, т.е. равной null, false, 0, 0.0, '', '0' или array().
Вызов несуществующего элемента даст null, поэтому empty($_POST['несуществующийИндекс']) вернёт true
Спустя 2 часа, 56 минут, 40 секунд (4.04.2011 - 14:45) mrpsyx написал(а):
empty не даст нотисе если переменная не будет существовать, то-есть вернет тру, то-есть пусто... значит isset тут не в тему....
гость все правильно сказал..
гость все правильно сказал..
Спустя 17 часов, 58 минут, 11 секунд (5.04.2011 - 08:44) linker написал(а):
mrpsyx
index.php?value=0
if (empty($_GET['value']))
die('Вы не ввели значение'); // Это есть ошибка, я ввел нулевое значение, а меня отфутболивают
_____________
Обмен Ukash на WebMoney