phpでは、以下は機能的に同等かどうか疑問に思っていますか?タイプヒントとタイプキャスティングsetter php
class Foo {
public $bar;
...
public function setBar($bar) {
$this->bar = (array)$bar;
}
}
class Foo {
public $bar;
...
public function setBar(array $bar) {
$this->bar = $bar;
}
}
どちらがベストプラクティスと考えられますか?両方を行うことは理にかなっていますか?:
class Foo {
public $bar;
...
public function setBar(array $bar) {
$this->bar = (array)$bar;
}
}
いいえ、機能的に同等ではありません。タイプヒントは予期しない値を渡そうとするとエラーをスローし、タイプキャスティングは値のタイプを変更しようとします。 –