• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

NoOne

Framework de persistência

17 mensagens neste tópico

Boa noite,

A minha dúvida consiste se existe alguma BOA framework de persistência para php semelhante ao hibernate para o Java.

Já vi que existem algumas, mas se me puderem aconselhar, segundo a vossa opinião, qual a melhor ficaria agradecido.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não sei bem o que estás à procura mas se a ideia é teres um estado na tua aplicação, puderes fechar o browser e mais tarde continuar onde estavas... Uma solução pode passar por usares POO e depois é uma questão de serializares os objectos, gravares no disco e quando precisares voltas a carrega-los.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

php tem suporte para "adormecer" e "acordar" séries de variaveis, arrays e objectos, portanto nem é preciso usares uma framework para o efeito.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu estava à procura de uma cena do género hibernate:

Hibernate is a powerful, high performance object/relational persistence and query service. Hibernate lets you develop persistent classes following object-oriented idiom - including association, inheritance, polymorphism, composition, and collections. Hibernate allows you to express queries in its own portable SQL extension (HQL), as well as in native SQL, or with an object-oriented Criteria and Example API.

Com o hibernate ao criar um objecto ele faz a sua persistência na base de dados, a ideia disto é abstrair um bocado a programação da chata camada de acesso a dados. Mas isto é para java, queria saber se há algo semelhante para PHP.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Aproximado talvez, igual não. PHP é scripting interpretado na hora, não é software por assim dizer.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A questão de ser interpretado ou não não é importante para o que ele quer.

O que ele precisa é de persistir objectos, e não só em memória. Como é q voces fazem um site que dê para registar um sem número de clientes? Não fica em memória, querem persistir a informação numa base de dados, e geralmente usam SQL para isso. Como uma framework do tipo hibernate é possível mapear os objectos directamente num modelo relacional, abstraindo de toda a chatice de fazer as tabelas à mão.

Respondendo à tua pergunta, eu já usei uma framework de persistência para um trabalho, versão 1.1.6 do ezpdo, e é muito idêntico ao hibernate para java. Eu usei mysql como base de dados mas podes usar outra qq. Funciona muito bem e acho q é exactamente o que precisas.

Neste momento o site parece estar em baixo mas depois podes pesquisar: EZPDO

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não sei bem o que estás à procura mas se a ideia é teres um estado na tua aplicação, puderes fechar o browser e mais tarde continuar onde estavas... Uma solução pode passar por usares POO e depois é uma questão de serializares os objectos, gravares no disco e quando precisares voltas a carrega-los.

Solução válida mas só se os dados couberem todos em memória, ou a coisa complica-se...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Parece-me que estás a confundir ORM com Hibernate, mas deve ser impressão minha.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Parece-me que estás a confundir ORM com Hibernate, mas deve ser impressão minha.

O hibernate faz ORM, portanto como abuso de linguagem para o efeito desta thread eu considero-os a mesma coisa.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas na verdade não são. ORM por si só não é cross-request, mal falando  :D

Frameworks com ORM há aos pontapés, que façam o mesmo que o Hibernate já não são tantas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Certissimo, mas o que ele quer é uma framework que lhe faça ORM em php, e já que ele falou em hibernate para java, eu aconselhei EZPDO para php porque foi a mais parecida com hibernate que eu já usei.

Não percebo é pq é q o site dos gajos n funcina. Se calhar tou para aqui a aconselhar uma cena q ja n existe lol

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Kohana não é uma framework de ORM. Ou foi acrescentado recentemente suporte para ORM?

Para PHP não conheço nenhuma framework ORM de qualidade, nunca experimentei EZPDO mas das pesquisas que tinha feito nunca encontrei algo que funcionasse tão bem como os sistemas de ORM para Java. Parece que não é algo muito usado no ambiente de PHP.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Kohana não é uma framework de ORM. Ou foi acrescentado recentemente suporte para ORM?

Há mais de meio ano.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Parece-me que estás a confundir ORM com Hibernate, mas deve ser impressão minha.

A funcionalidade que mais preciso para este projecto é mesmo ORM, mas se houvesse algo com todas as funcionalidades do hibernate não me importava :D

A questão de ser interpretado ou não não é importante para o que ele quer.

O que ele precisa é de persistir objectos, e não só em memória. Como é q voces fazem um site que dê para registar um sem número de clientes? Não fica em memória, querem persistir a informação numa base de dados, e geralmente usam SQL para isso. Como uma framework do tipo hibernate é possível mapear os objectos directamente num modelo relacional, abstraindo de toda a chatice de fazer as tabelas à mão.

Respondendo à tua pergunta, eu já usei uma framework de persistência para um trabalho, versão 1.1.6 do ezpdo, e é muito idêntico ao hibernate para java. Eu usei mysql como base de dados mas podes usar outra qq. Funciona muito bem e acho q é exactamente o que precisas.

Neste momento o site parece estar em baixo mas depois podes pesquisar: EZPDO

Muito obrigado, vou pesquisar :confused:

PS: encontrei agora este (uma vez que o site do EZPDO estava realmente em baixo) : http://www.doctrine-project.org/  parece-me bem, até tem uma linguagem de queries sql tipo hql... :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Doctrine facilmente se implementa no Kohana, há quem o use (poucos) em vez do ORM que ele traz por defeito :confused:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Kohana não é uma framework de ORM. Ou foi acrescentado recentemente suporte para ORM?

Say what?! Não é uma frmwrk DE ORM, mas tem o sistema ORM nativo :confused: Não recorre às frmwrks DE ORM como Doctrine, Propel, entre outros :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora