2017-04-11 25 views
2

文字列としてテーブルから行数を取得する必要があります。 私はこのコードを実行:今すぐPhalcon - PHQLのcountの結果を取得

$phql = "SELECT COUNT(*) FROM Model WHERE id = $this->id"; 
$count = $this->getModelsManager()->createQuery($phql)->execute(); 

$countPhalcon\Mvc\Model\Resultset\Complexオブジェクトです。適切な結果を得るには、私はそのようなことをする必要があります:

$count[0]->{0} 

私の意見ではこれはひどいです。この結果を得る他の方法はありますか?

答えて

3

ほとんどソリューション:

$count = $this->db->fetchOne('SELECT COUNT(*) AS total FROM products'); 

2)モデルの集計

$count = Products::count(
    "area = 'Testing'" 
); 

詳細情報と方法:セクションでhttps://docs.phalconphp.com/ar/3.2/db-models生成の計算

1)単純なクエリを使用します

3) executeQuery()を使用することを主張する場合は、結果を1つだけ取得するには、getFirst()を追加する必要があります。 PDOのfetchOne()と同様です。

$phql = "SELECT COUNT(*) AS total FROM Models\Products"; 
$count = $this->modelsManager->executeQuery($phql)->getFirst();