Forum Webscript.Ru
Программирование => Perl => Тема начата: Yuraz от 23 Апреля 2002, 16:58:05
-
$input{$name} = $value;
...............
$sort=$input{sort};
...............
if ($sort==\'\') # 2 апострофа
{
$sort="postavshik_id";
}
Народ, помогите, что же забивается в переменную $sort если я туда ничего не посылаю(по умолчанию не посылается, а так посылаю эту переменную методом GET для случаев сортировки), сравнение которое я делаю не срабатывает. Мне надо, если $sort пустой (а как это узнать) то подставляется моё значение. Спасибо.
Добавлю, что просто запрос не выполняется если $sort пустая, а заменить её я не могу.
$sqlstatement = "SELECT * FROM $tablename ORDER BY $sort";
-
Мне надо, если $sort пустой (а как это узнать) то подставляется моё значение.
if ($sort eq \'\') # 2 апострофа
{
$sort="postavshik_id";
}
Народ, помогите, что же забивается в переменную $sort если я туда ничего не посылаю
$sort будет неопределена (undef)
А вообще:
perldoc perldata
-
NeoNox спасибо.
-
При отладке скрипта можно пользоваться print-ом
и смотреть какие значения принимаються на разных этапах.
-
if ($sort eq \'\') # 2 апострофа
{
$sort="postavshik_id";
}
Проще так:
if (!$sort\')
{
$sort="postavshik_id";
}
А еще проще вот так:
$sort||="postavshik_id";
-
Проще так:
if (!$sort\')
{
$sort="postavshik_id";
}
:) тогде еще и так:
unless($sort){....}
-
Green Kakadu
А почему
unless($sort){....}
проще или быстрее чем
$sort||=...;
?
-
А почему ...
проще или быстрее чем
:) гы, а я и не говорил что проще и быстрее - просто раз уж писать if(!что-то), то unless выглядит естественее, только и всего.
А ведь можно и так:
$sort= $input{sort}? $input{sort}: \'postavshik_id\';
:) раз мы уж начали перебирать варианты.
-
unless выглядит естественее
:) ну это, скорее, дело вкуса. Впрочем, не буду спорить с авторитетом :)
раз мы уж начали перебирать варианты
Да уж, в перле всегда есть из чего выбрать. И это здорово ;)