2014-10-19 67 views
0

我想獲得PerkID作爲結果數組索引,但它仍然返回數組與指示0,1,2和PerkID是在下一層。

$sql='SELECT PerkID,Amount FROM perks'; 
$perks=$connection->createCommand($sql)->queryAll(array("index"=>"PerkID")); 

結果是

陣列(34){[0] =>陣列(2){[ 「PerkID」] =>串(7) 「2285513」[ 「金額」] = > string(1)「5」} ...

+0

檢查@Carlos貝利薩里奧答案,我認爲這會工作 – 2014-10-20 05:31:13

回答

0

這是queryAll方法的行爲,但我不明白是什麼問題,您可以使用foreach來迭代數組的所有行,

foreach ($perks as $perk) { 
    echo $perk['PerkID']; 
} 

爲什麼不使用Yii的活躍記錄?

+0

那是我做了什麼結果。 – nicky 2014-10-20 00:41:00

0

嘗試使用CHtml::listData

所以,你可以讓你通過這個

$sql='SELECT PerkID,Amount FROM perks'; 
$perks=$connection->createCommand($sql)->queryAll(); 

$result = CHtml::listData($perks,'PerkID','Amount');