今日インターフェースを実装するにあたり、実装する関数で引数にデフォルト値を設定できないかなーとか思いました。以下のような感じです。``` < ?php interface MyInterface { public function foo($val); }
class ImplementedClass implements MyInterface { public function foo($vals = “default”) { if(!is_string($val)) { $val = (string)$val; } echo “$valn”; } }
$i = new ImplementedClass(); $i->foo();
結果
Fatal error: Declaration of ImplementedClass::foo() must be
compatible with that of MyInterface::foo() in C:tmptest9.
php on line 7