Boa pergunta cara.
Depois que eu vi um post do Elliot Haughin sobre cache, ele mostrou uma
diferença positiva absurda ao usar Array no lugar de objetos.
Enfim, na view hoje, só uso array();
Sds
Julio Fagundes
Em 28/3/2011 17:23, Jairo escreveu:
Olá pessoal,
Estou chegando agora na lista, estou começando a experimentar o
CodeIgniter, indicação de um colega que assina a lista php-sp.
Não tenho experiencia com FrameWorks, mas estou gostando do CI 2.0.
A dúvida é sobre como vcs. exibem uma listagem numa view, se através de
objects ou arrays mesmo.
Minha model :
<?php
class Cargo extends CI_Model {
var $id_cargo = '';
var $nome_cargo = '';
function __construct()
{
parent::__construct();
}
function obter_todos()
{
return $this->db->query('select * from cargo');
// reparem que o jeito de retornar os dados abaixo( que copiei do
exemplo do user_guide ), muda . Preferi o acima.
//$query = $this->db->query('select * from cargo');
//return $query->result();
}
function buscar($id)
{
return $this->db->query("select * from cargo where id_cargo =
'$id'");
}
} // fim do model
?>
No meu Controller, dei alguns 'echo' para testar, e depois chamar a
view :
$this->load->database();
$this->load->model('Cargo');
//testando buscar um registro pelo id
$registro = $this->Cargo->buscar('3');
echo $this->db->last_query();
if ($registro->num_rows()> 0)
{
$row = $registro->row();
echo '<BR><BR>Usando o OBJETO row : ' . $row->id_cargo . ' - ' .
$row->nome_cargo . '<BR>'; // funcionou legal
}
$data['listagem'] = $this->Cargo->obter_todos();
$data['total'] = $query->num_rows();
$this->load->view('main', $data);
// --- fim do controller ------------
E finalmente, na view ...
<html> blá, blá, bla ...
<?php foreach ($listagem->result() as $linha):?>
<tr>
<td><?php echo $linha->id_cargo ;?></td>
<td><?php echo $linha->nome_cargo ;?></td>
</tr>
<?php endforeach;?>
<p>Total =<?php echo $total;?> </p>
</html>
Então, a dúvida seria em utilizar a combinação :
- do jeito do result na function do model;
- no foreach, o uso de $listagem->result() OU $listagem->result_array()
- na view ficaria como mostrado acima OU, se array, ficaria assim :
<td><?php echo $linha['id_cargo'] ;?></td>
<td><?php echo $linha['nome_cargo'] ;?></td>
O que vcs. usam ? Alguém poderia comentar algo ? Performance, memória,
facilidades, problemas, etc ???
Muto obrigado,
--
*Sds
Julio Fagundes*
Desenvolvedor Web - http://juliofagundes.com/ <http://juliofagundes.com>
Cel: 22 9956-5987
Skype: julio-fagundes <skype://julio-fagundes?call>
_______________________________________________
[email protected]
http://www.codeigniter.com.br
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------