Txe
(Reginatto Evandro)
December 13, 2012, 8:15pm
1
Opa,
Estou com uma dúvida, estou montando um relatório e quero pegar o retorno de um sql. No entanto, utilizando o exemplo abaixo, o retorno se dará num array. Tem como o retorno ser um objeto?
// conectando
$commandRelatorio = Yii::app()->db->createCommand($sqlRelatorioArray['valor']);
// executando
$resultRelatorio = $commandRelatorio->query();
// percorrendo
foreach ($resultRelatorio as $valor) { }
Cara essa ai é a forma mais rapida e com menos consumo de memória.
O AR é mais lento, pois cada registro ele tem que instanciar um objeto ,
o query builder já vai trazer em array mesmo muito mais leve
Mas isso depende do que irá fazer.
Você pode tentar usar isso CActiveRecord.populateRecords(), dá uma olhada lá.
Espero ter ajudado.
Txe
(Reginatto Evandro)
December 14, 2012, 1:27pm
3
Opa Allan,
Valeu pela dica, essa informação sobre o desempenho eu não tinha. Vou dar uma olhada na dica e posto o resultado.
Valeu