[PHP5] Actualización de librerías

En vista de algunos proyectos de librerías que he hecho y que tengo por ahí pendientes; he creado un repositorio público en google code (que lo prefiero a GitHub para cosas como estas que no son proyectos, sino solo librerías); por donde la gente podrá encontrar algunas de las librerías que uso para algunos de mis proyectos.

En enlace: https://code.google.com/p/php5toolkits/

Entre las librerías que encontrarán ahí (por ahora, luego vendrán más) son:

excel_reader:

Una clase que permite leer archivos de excel (de los viejos, no de los OOXML, esa viene en camino) de una manera fácil y orientada a objetos; tiene un tiempo conmigo y hasta un artículo en este blog; pero había perdido acceso a mi viejo repositorio, así que le hice uno público.

la librería tiene licencia GPL v.2

Para hacer checkout, ejecutan:

svn checkout http://php5toolkits.googlecode.com/svn/tools/excel_reader/ excel_reader

Un ejemplo de uso:

$orden = new excel_reader('listado_sincedula.xls');
#de que columna sacamos los titulos de las columnas
$orden->setColumnName(1);
#definimos el encoding
$orden->setOutputEncoding('CP1251');

#ejecutamos la lectura del archivo excel:
$orden->read();

foreach($orden as $sheets) {
 echo "Hoja &lt <br />";
 $columnas = $orden->columns();
 $filas = $orden->numRows();
 for ($i = 2; $i <= $filas; $i++) {
 echo "Fila &lt <br />";
 $fila = $orden->rows($i);
 foreach($fila as $k=>$v) {
 print_r(nl2br("celda: {$k}= {$v}\n"));
 }
 }
 #forma alternativa
 foreach($orden->rows() as $fila) {
 foreach($fila as $k=>$v) {
 print_r(nl2br("celda: {$k}= {$v}\n"));
 }
 }
}

ldap-toolkit

Una mejora (usando una sintaxis orm-like) para operar con LDAP de una manera práctica; soporta las funciones más comunes que se realizan en LDAP; consultas, traer via DN, insertar, copiar, pegar, etc; permite obtener atributos privados y demás.

Para acceder al código:

svn checkout http://php5toolkits.googlecode.com/svn/ldap-toolkit

Y un ejemplo de uso uso:

#ejemplo de una nueva entrada:
$uid = $ldap->create('ou=usuarios,ou=Ejemplo,ou=unidades,dc=test,dc=com,dc=ve');
$uid->addObjectClass('inegOrgPerson'); #agrega recursivamente todos los objectclasses dependientes
$uid->addObjectClass('qmailUser');
$uid->baseAttribute('uid');
$uid->uid = 'prueba tres';
$uid->mail = 'prueba@test.com.ve';
$uid->insert();

Se aceptan sugerencias, revisión de código, ideas para ampliar las capacidades de las librerías, etc.

Acerca de phenobarbital

http://about.me/phenobarbital

Publicado el 9 abril 2010 en Cultura Libre, PHP, PlanetaLinux, Programacion. Añade a favoritos el enlace permanente. 1 comentario.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: