Помогите разобраться, есть код
?>
<form action="" method="post">
<input name="text" type="text" /><br />
<input name="ok" type="submit" />
</form>
<?php
$text = !empty($_POST['text'])?$_POST['text']:null;
echo $text;
Хочу понять как работает этот код, примерно понимаю что оно делает, типо в текст записывает через пост, если что-то есть выводит сообщение. если нет то null (нечего) но хочу узнать подробей что как делает, что б сам мог написать этот код
$text = !empty($_POST['text'])?$_POST['text']:null;
echo $text;
Спустя 15 минут, 46 секунд (7.06.2011 - 13:35) Игорь_Vasinsky написал(а):
$text = !empty($_POST['text'])?$_POST['text']:null;
перед тобой тернарный оператор!
его очень удобно использовать в замен:
if(!empty($_POST['text']))
$text = $_POST['text'])
else
$text = null;
Вообщем идет присвоение значения переменной по принципу :
переменная = условие ? значение - если условие true : значение - если условие false
Осваивай в самом начале этот момент, его ещё много где можно применять - сокращая код
Спустя 1 минута, 56 секунд (7.06.2011 - 13:37) nugle написал(а):
Вначале идет проверка на пустоту переменной
после знака вопроса (?) идет два варианта решений:
1.Если массив $_POST['text'] не пуст, то переменной $text присваивается $_POST['text']
после знак двоеточие (:) идет второе решение
2. Если $_POST['text'] пуст, то переменной присваивается значение null, т.е. переменная $text осталось пустой
После этого выводится переменная $text
Игорь_Vasinsky, опередил))
!empty($_POST['text'])
после знака вопроса (?) идет два варианта решений:
1.Если массив $_POST['text'] не пуст, то переменной $text присваивается $_POST['text']
после знак двоеточие (:) идет второе решение
2. Если $_POST['text'] пуст, то переменной присваивается значение null, т.е. переменная $text осталось пустой
После этого выводится переменная $text
Игорь_Vasinsky, опередил))
Спустя 1 минута, 40 секунд (7.06.2011 - 13:39) Игорь_Vasinsky написал(а):
О да.. у меня ещё и проще объяснение
![wink.gif](http://phpforum.ru/html/emoticons/wink.gif)
Спустя 2 часа, 40 минут, 48 секунд (7.06.2011 - 16:20) Guest написал(а):
А где можно почитать хорошое описание по этим тернарным операторам, что б уметь самому делать проверку как хочу
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 1 час, 33 минуты, 3 секунды (7.06.2011 - 17:53) Игорь_Vasinsky написал(а):
$_POST['text']
это глобальный массив, содержащий значение поля формы с name="text", при этом данные с этой формы отправляются методом method = "POST"
Спустя 52 минуты, 36 секунд (7.06.2011 - 18:45) inpost написал(а):
Guest
Следи за манерами у нас на форуме, иначе не далеко он бани.
Следи за манерами у нас на форуме, иначе не далеко он бани.