重複の可能性:
現在のオブジェクト ($this) を子孫クラスにキャストする
PHPで基本クラスオブジェクトから子クラスオブジェクトへのオブジェクトキャストを実行することは可能ですか. 私の基本クラスと子クラスは次のとおりです。
<?php
class Base
{
}
class child extends Base
{
}
$b=new Base();
$c=(Child)$b;//MY QUESTION IS CAN I PERFORM THIS TASK???
?>
重複の可能性:
現在のオブジェクト ($this) を子孫クラスにキャストする
PHPで基本クラスオブジェクトから子クラスオブジェクトへのオブジェクトキャストを実行することは可能ですか. 私の基本クラスと子クラスは次のとおりです。
<?php
class Base
{
}
class child extends Base
{
}
$b=new Base();
$c=(Child)$b;//MY QUESTION IS CAN I PERFORM THIS TASK???
?>
いいえ、PHP ではできません。子供はベースからすべてを持っているのに、なぜあなたはそうするのですか?
コメントで書いたように、Java から知ることができる PHP でのオブジェクトのキャストのようなものはありません。
シリアライゼーションを使用した回避策がありますが、これは冗談だと思います...
とにかく、関数/メソッドを定義するときに、次のようにパラメーターを入力できます。
class Foo { }
class Bar {
public function bar(Foo $foo) {
;
}
}
とにかく、あなたはまだ親オブジェクトを子クラスにキャストすることはできず、できません(これはできませんし、Javaでもできません。その逆もOKです)。