Persistencia de objetos para PHP

Persistencia de objetos para PHP

A partir de PHP 5 se dio soporte para objetos con lo cual podríamos dejar de utilizar la programación estructurada y entrar a la nueva era de la progr

Obtener diferencias de dias en php de forma facil
Usar Google Chrome como apoyo para el desarrollo web
Session failed to validate en tiny tiny rss
Arreglos y matrices en PHP
Subir, leer y separar los datos de un archivo (CSV) en PHP

A partir de PHP 5 se dio soporte para objetos con lo cual podríamos dejar de utilizar la programación estructurada y entrar a la nueva era de la programación, aunque tenemos la contra de que al crear un objeto y asignarle valores a las propiedades, estas son fácilmente accesibles desde el archivo donde se asignaron, pero cuando cambiamos de archivo y cargamos nuestra clase, nos damos cuenta que los valores asignados se han perdido y por esta situación nos es muy difícil crear un proyecto o sistema enteramente basado en objetos.

Es por ello que en 2011 me di a la tarea de desarrollar una manera muy simple y sencilla para asignar valores a las propiedades de los objetos y que sean fácilmente recuperadas desde cualquier otro archivo en nuestro proyecto; en 2012 en éste blog publiqué la primera versión y lo empecé a utilizar en mis proyectos, y después de algunas mejoras ahora publico la versión 1.0 la cual soporta:

  • Guardar y recuperar valores en texto simple como cadena o enteros.
  • Guardar y recuperar arreglos sin perder su estructura.
  • Soporte para clonar objetos. Si en un sólo archivo necesitas, por ejemplo, utilizar una clase en particular N veces, entonces la puedes clonar e instanciar en una variable y asignar los valores que gustes, dichas variables pueden ser utilizadas para recuperar la información de los objetos clonados sin problema de que colapsen los datos entre si.
  • Limpiar los valores de una clase. Cuando ya no necesites los valores, o quieras guardar nuevos valores y la clase ya tenga valores recuperados previamente, puedes darle la orden de limpiar la clase y estará lista para que coloques los nuevos valores.
  • Permite que trabajes en proyectos enteramente basadas en persistencia  de objetos o que lo utilices sólo para determinados elementos y no afecta a tu proyecto.

Ejemplos

Se toma como ejemplo una clase llamada persona en la cual se tienen propiedades como el nombre, correo y teléfono.

Asignar valores


include_once('init.php'); //el núcleo de la persistencia

include_once('persona.php'); //la clase con soporte para persistencia

persona::setValue('nombre', 'Angelos'); //A la clase persona se le asigna el valor 'Angelos' a la propiedad 'nombre'

Una vez que han sido asignado los valores, se pueden recuperar desde cualquier archivo del proyecto, al incluir el núcleo, la clase con soporte para persistencia y la orden de que recupere todos los valores


include_once('init.php'); //núcleo

include_once('persona.php'); //clase con soporte para persistencia

persona::start(); //orden para recuperar todos los valores de la clase

echo persona::getValue('nombre'); //Imprime el valor recuperado 'Angelos'

El código puede ser analizado, descargado o hacerle fork desde:

https://github.com/angelinux-slack/persistenceInPHP

 

Ver ejemplos en línea

Ejemplo de persistencia de objetos con valores simples y soporte para arreglos

http://angelinux-slack.net/blog_codigos/persistencia/example/simple/

 

Ejemplo de clonación de objetos con soporte de persistencia de objetos

http://angelinux-slack.net/blog_codigos/persistencia/example/cloneObject/

 

 

¡Cualquier contribución es bienvenida!

COMMENTS

WORDPRESS: 0