Стиль @ программирования

grigory soid

Новичок
Стиль @ программирования

Господа, как вы относитель к такому стилю программирования:
if (@$_GET['select']){
...
}

Вместо:
if ( isset($_GET['select']) ){
...
}

Функция isset() довольно однозначна, тогда как @ - многофункциональная штука, из-за которой могут быть глюки скажем при изменении значений переменных по умолчанию (не объявленных) в будущих версиях пхп. Но все же мне нравится @ ;-)
 

440hz

php.ru
grigory soid
Но все же мне нравится @ ;-)
а "goto" тебе нравится?

ИМХО @ - зло, т.к. занимается "подавлением", а кому нравиться, когда его давят? никому.

можно писать !empty(), к примеру ... для особо одаренных можно error_reporting(0)
 

grigory soid

Новичок
Понятно, спасибо за ответы.



> а "goto" тебе нравится?
До сих пор не могу забыть фразу "любишь рекурсию, полюбишь и goto".. из фидо откуда-то...

ЗЫ. goto оффтопик, тема исчерпана ;-)
 

WP

^_^
grigory soid
PHP:
function gpcvar_str(&$var) {return strval($var);}
function gpcvar_int(&$var,$empty=FALSE) {if ($empty and strlen($var) == 0) {return '';} return intval($var);}
function gpcvar_array(&$var) {return is_array($var)?$var:array();}
Я ни на что не претендую, но мне так удобно. Использование:
PHP:
echo gpcvar_str($_GET['string']);
gpcvar_str обязательно вернет string, если переменная не определена, то пустой string. Ошибок (нотисов) при этом не будет засчет того что передается ссылка на переменную. Еще и легко искать опечатки в названиях переменных. В конце скрипта var_dump($_GET); :) Там будут и запрошенные переменные ранее несуществующие (со значением NULL). Раньше я делал isset($_REQUEST['var'])?strval($_REQUEST['var']:'', а потом однажды задолбало. Проверка типов особенно актуальна для массивов. Типа
PHP:
foreach ($_REQUEST['myarray'] as $k=>$v) {echo $v.'<br />';}
Если передать строку, то будет warning.
 
Сверху