AlexVN
Новичок
Типизация PHP
Что Вы скажете на счет использования такого подхода:
И далее (PHP5):
?
На сколько я вижу:
Достоинства:
1. функцию с неправильным параметром не вызовешь.
2. Reflection будет выдавать типы параметров.
Недостатки:
1. Дольше работает
2. Так никто не пишет.
3. Неудобно использовать в выражениях.
Другие соображения?
Что Вы скажете на счет использования такого подхода:
PHP:
class SimpleType {
var $value;
function getValue() { return $this->value; }
function toString() { return new String((string)$this->value); }
function __toString() { return (string)$this->value; }
}
class Integer extends SimpleType {
function Integer($value) { $this->value = (int)$value; }
}
class Double extends SimpleType {
function Double($value) { $this->value = (double)$value; }
}
class String extends SimpleType {
function String($value = '') { $this->value = (string)$value; }
function compareTo(&$string) {
if (is_object($string) && is_a($string, 'String'))
return $this->value == $string->getValue();
else
return $this->value == $string;
}
}
PHP:
function myFunction(Integer $myInteger, String $myString) {
...
}
На сколько я вижу:
Достоинства:
1. функцию с неправильным параметром не вызовешь.
2. Reflection будет выдавать типы параметров.
Недостатки:
1. Дольше работает
2. Так никто не пишет.
3. Неудобно использовать в выражениях.
Другие соображения?