O que eu chamei de "Outra solução" ali, na verdade é uma solução pra
carregar a Model_Interface automaticamente. :).

Dando uma olhada aqui, acho que a criação da library não é uma boa. Eu
tinha pensado nisso, pois assim vc poderia carregar ela usando o
Loader, mas uma interface não pode ser instanciada, se não causa um
Fatal Error no PHP.

Criando uma library, vc pode usar o Loader pra fazer o trabalho sujo,
mas acredito que ele vai tentar instanciar essa interface, o que
causaria um Fatal Error no PHP. A solução é criar esse arquivo em
algum local e dar um require() nele em algum momento.


Uma solução elegante, PHP 5, é implementar o __autoload() e botar uma
lógica pra ele carregar isso automaticamente, algo do tipo:

function __autoload($class_name)
{
  if (preg_match("/Interface$/", $class_name)) {
require(APP_DIR."interfaces\".$class_name.".php"); }
}

Isso ta básico, mas é o caminho.


2008/8/18 Newton Wagner <[EMAIL PROTECTED]>:
> Você pode usar a declaração de implements e extend ao mesmo tempo, tipo:
>
> class Usuario_Model extends Model implements Model_Interface {
> }
>
> Você pode carregar a interface de diversas formas, mas acho que a
> forma mais coerente, sem mexer no Core do CI, seria criar uma library
> e carregar ela.
>
> Outra solução é criar o "MY_Model" e, no construtor dessa classe, ele
> instanciar esse library da interface.
>
>
> 2008/8/18 Pedro Belmino <[EMAIL PROTECTED]>:
>> A interface extends model?
>> As classes que vão implementar a interface vão dar o load da interface
>> aonde?
>>
>> Att,
>>
>> Newton Wagner escreveu:
>>
>> Acho que fica mais fácil você dizer logo qual a sua dúvida... a
>> resposta pra esse e-mail poderia ser só: "Sim".
>>
>> Mandae!!! Qual a dúvida? :).
>>
>>
>> 2008/8/18 Pedro Belmino <[EMAIL PROTECTED]>:
>>
>>
>> Olá,
>> Alguém já utilizou interface(Orientação a objetos) no codeigniter?
>>
>> Att,
>>
>> --
>> 'É um orgulho ter você como nosso cliente'
>> ____________________________
>> Pedro Belmino
>> Desenvolvedor
>>
>> ArgoHost.net
>> Hospedagem Web com Facilidade
>> http://www.argohost.net
>> Suporte Telefônico: (85) 3264 9944 / (11) 4063 4844
>> Contato direto: Ramal 107
>> E-mail: [EMAIL PROTECTED]
>>
>>
>> _______________________________________________
>> Lista mailing list
>> [email protected]
>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>>
>>
>>
>>
>>
>>
>> --
>> 'É um orgulho ter você como nosso cliente'
>> ____________________________
>> Pedro Belmino
>> Desenvolvedor
>>
>> ArgoHost.net
>> Hospedagem Web com Facilidade
>> http://www.argohost.net
>> Suporte Telefônico: (85) 3264 9944 / (11) 4063 4844
>> Contato direto: Ramal 107
>> E-mail: [EMAIL PROTECTED]
>>
>> _______________________________________________
>> Lista mailing list
>> [email protected]
>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>>
>>
>
>
>
> --
> Newton Wagner
>
> skype: newtonwagner
> msn/gtalk: [EMAIL PROTECTED]
>
> http://www.newtonwagner.net/
> - http://www.owshit.com.br/
>



-- 
Newton Wagner

skype: newtonwagner
msn/gtalk: [EMAIL PROTECTED]

http://www.newtonwagner.net/
- http://www.owshit.com.br/

_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

Responder a