Ir para conteúdo



Iniciando PHP MVC Dao Loop Infinito

loop infinito php dao mvc

  • Por favor, faça o login para responder
Não há respostas para este tópico

#1 ydealtec

ydealtec
  • Membros
  • 1 posts

Postado 19 January 2012 - 08:24 AM

Bom dia pessoal,

Na minha empresa estamos migrando um sistema PHP estruturado para Orientado à Objetos com MVC.


Verifiquei que há alguns problemas e não sei como resolver.

1 - Minha classe Usuário contém:
$id, $nome, $usuarioCriou

pois é preciso saber que o criou.

Quando vou dar o 'cast', no Dao para transformar informações do banco em Objetos, acontece algo do tipo.

$usuario = new Usuario();

$usuarioCriou = new Usuario();
$usuarioCriou = $usuarioDao->find($array['id_criou']);

$usuario->setId($array['id']);
$usuario->setNome($array['nome']);
$usuario->usuarioCriou($usuarioCriou);


Até aí parece bonito, mas quando ele executa o 'find' para buscar o usuario que criou, ele tem que dar o 'cast' no usuario que criou.
Para isso, ele executa o 'find' do usuario que criou ele...

Isso é só um exemplo, sempre que um objeto pode referenciar ele mesmo, entra em loop infinito.



E outro problema é:
Um objeto 'pessoa', que contem usuario, cidade, carros que ela possui. E os carros possuem usuario criador, pessoas que ja utilizaram.

Se eu for carregar isso tudo no Cast da Pessoa, o sistema fica MUITO lento, pois é um objeto enorme, com centenas de objetos dentro.



Desculpe, sou iniciante, mas realmente não sei como resolver esse problema.







Tópicos que também usam as tags loop infinito, php, dao, mvc:

1 usuário(s) está(ão) lendo este tópico

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)