代码之家  ›  专栏  ›  技术社区  ›  waiwai933

在PHP中构造子对象

  •  0
  • waiwai933  · 技术社区  · 14 年前

    我有一个抽象的父类 Item ,从中扩展不同类型的项: ItemTypeA , ItemTypeB ,和 ItemTypeC . 根据我的数据库结果,我有一个数组:

    array(
    
    'item_name' => 'This is the item name',
    'item_type' => 'ItemTypeA'
    
    );
    

    在PHP中,创建项的最佳方法是什么?我应该做类似的事情吗?

    static function constructFromDatabase($result){
    
    $type = $result['item_type'];
    $item = new $type;
    return $item;
    
    }
    
    2 回复  |  直到 14 年前
        1
  •  1
  •   jigfox    14 年前

    对, $item = new $type; 应该很好用, source

        2
  •  0
  •   Halil Özgür    14 年前

    return new $result['item_type']; ,如果您不打算在其他任何地方使用中间变量,那么出于性能的考虑(可能还有清晰性/简单性的原因)。