function ifStrArrSet($arr, $k, $b){
settype($strv,'string');
if (isset($arr[$k]))
$strv = strval($arr[$k]);
else
$strv = strval($b);
return $strv;
}
function ifIntEmp($v, $b){
settype($intv,'int');
if (@$v)
$intv = intval($v);
else
$intv= intval($b);
return $intv;
}
AmdY, ты прав, переменная у него уже объявлена, а он всеравно считает что возможно она у него не объявлена - вот пример когда человек просто не понимает что он делаетfunction ifIntEmp($v, $b){
settype($intv,'int');
if (@$v)
$intv = intval($v);
else
$intv= intval($b);
return $intv;
}
Ты меня конечо извени, но обобсчать не стоит.@ - признак того что программист просто не знает что он делает

прям триллер какой-то..сам будеш пугатся
увидеш код состоящий из одних @:
к 100 строкам 99 @ - сам будеш пугатся
представляю, что тогда потребуется, что бы поддерживать проекты таких разработчиков...Просто нужно взять за парадигму, что отсутсвие переменной равносильно ее наличию с пустым значением
if ($a == 'bla')Я предпочитаю иметь "прозрачный" код
Новый завет от Матфея. Глава 7, строфа 3,4,5И что ты смотришь на сучок в глазе брата твоего, а бревна в твоем глазе не чувствуешь?
Иль, как скажешь брату твоему: "дай я выну сучок из глаза твоего"; а вот, в твоем глазе бревно?
Лицемер! Вынь прежде бревно из глаза твоего и тогда увидешь как вынуть сучок из глаза брата твоего.
Что тут странного? Четкий и понятный код. При несуществуюшей $a, подразумевается что $a==''. PHP такие ситуации обрабатывает в штатном режиме. В нормальной бизнес логике пришло значение пустое или совсем не пришло суть есть одно и то же. Поэтому дифференциация этих ситаций должна быть целенаправленно удалена из кода.if ($a == 'bla')
при несуществующей $a - это нифига не прозрачно
А быть им или не быть сугубо личное решение.