demongloom
Новичок
Типизация зло?
Как лучше решить вопрос с типизацией, особенно с такими "слабо" контролируемыми типами, как string/numeric. Причем решение не должно быть жестким.
Пример отсутствия типизации.
function test($a) { echo $a; }
Пример стандартной типизации.
function test($a) { echo (string) $a; }
Пример жесткой типизации.
function test($a) {
if( !is_string($a) ) {
return trigger_error("wrong arg type"); }
echo $a;
}
Пример более мягкой типизации, с уведомлением.
function test($a) {
if( !is_scalar($a) || !settype($a,"string") ) {
return trigger_error("wrong arg type"); }
echo $a;
}
Как лучше?
Как лучше решить вопрос с типизацией, особенно с такими "слабо" контролируемыми типами, как string/numeric. Причем решение не должно быть жестким.
Пример отсутствия типизации.
function test($a) { echo $a; }
Пример стандартной типизации.
function test($a) { echo (string) $a; }
Пример жесткой типизации.
function test($a) {
if( !is_string($a) ) {
return trigger_error("wrong arg type"); }
echo $a;
}
Пример более мягкой типизации, с уведомлением.
function test($a) {
if( !is_scalar($a) || !settype($a,"string") ) {
return trigger_error("wrong arg type"); }
echo $a;
}
Как лучше?
))))))))))))))))))))))))