我可以更改对象';什么是php的类型?

我可以更改对象';什么是php的类型?,php,class,oop,object,Php,Class,Oop,Object,我使用PDOStatementobject将查询结果提取到NewOrder类类型的对象中 $result = $pdo->query($strsql); $result->setFetchMode(PDO::FETCH_CLASS, 'NewOrder'); $order = $result->fetch() NewOrder是一个具有子类的基类。我总是需要实例化一个子类,而不是这个基类NewOrder(它可能是一个抽象类,但是获取不起作用)。但是,可以根据结果的顺序类型字段

我使用
PDOStatement
object将查询结果提取到
NewOrder
类类型的对象中

$result = $pdo->query($strsql);
$result->setFetchMode(PDO::FETCH_CLASS, 'NewOrder');
$order = $result->fetch()
NewOrder
是一个具有子类的基类。我总是需要实例化一个子类,而不是这个基类
NewOrder
(它可能是一个抽象类,但是获取不起作用)。但是,可以根据
结果
顺序类型
字段中的值来确定要实例化哪个子级。获取
结果
后,我可以访问此值:

$orderType = $order->getOrderType();

获得此值后,是否可以将
$order
对象的类型从
NewOrder
更改为其子对象之一(取决于值
$orderType
)?我之所以想这样做,是因为我想避免创建一个新对象,并将所有属性从
NewOrder
类型的object
$order
重新分配到
NewOrderChild
类型的object
$order2

也许您想看看哪些支持这种类型的映射