1
我正在用php 5.6構建一個zend framework 2應用程序我使用的是doctrine2作爲數據庫相關代碼。 我爲數據庫中的每個表創建了Yaml文件。如何從createNativeQuery中獲取結果?
我想調用一個查詢並返回它的結果。
我用下面的代碼:
$query=<<<EOS
QUERY...
EOS;
$objectManager=$this->getObjectManager();
$rsm = new ResultSetMapping();
$rsm->addEntityResult('MyAlcoholist\Entity\DrinkFlavorInfo','u');
$rsm->addFieldResult('u','drink_type_name','drinkTypeName');
$rsm->addFieldResult('u','drink_brand_name','drinkBrandName');
$rsm->addFieldResult('u','drimk_company_name','drinkCompanyName');
$rsm->addFieldResult('u','drink_flavor_type_name','drinkFlavorTypeName');
$query = $objectManager->createNativeQuery($query,$rsm);
$query->setParameter(1, $id);
$drinkFlavors = $query->getResult();
die(var_export($drinkFlavors,1));
我創建了一個名爲DrinkFlavorInfo與getter和setter變量類,但因爲我配置主義與YAML來工作,那麼它的搜索YAML文件來代替。在yaml配置 其中一個屬性是table_name,並沒有表,我只是試圖創建一個類,將保存返回的值。我怎麼能這樣做?
這是非常有幫助,謝謝!它看起來在本機查詢中甚至有「as Name」,甚至在結果中也包含單個標量列 - 但我們無論如何都必須定義映射。 – Arkemlar