Foros del Web » Programando para Internet » PHP »

Crear libreria php muy simple o buscar una creada?

Estas en el tema de Crear libreria php muy simple o buscar una creada? en el foro de PHP en Foros del Web. Hola Estoy pensando en crear una lista de funciones muy básicas para ahorrarme escribir las lineas de código más habituales. Por ejemplo: en lugar de ...
  #1 (permalink)  
Antiguo 10/07/2009, 01:59
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Crear libreria php muy simple o buscar una creada?

Hola

Estoy pensando en crear una lista de funciones muy básicas para ahorrarme escribir las lineas de código más habituales.

Por ejemplo:
en lugar de escribir:

$query = mysql_query("select fotos from miTabla WHERE aprobada=''si" AND ordenadas="si" ORDER BY orden");
while($row = mysql_fetch_array($query))
{
echo row[0];
}

podría crear una funcion que realice esa "query" a la que luego puedo llamar y pasarle los parámetros necesarios con una sola línea de código

Yo se como hacerlo, pero no quiero reinventar la rueda.

Conozco librerias como ZEND o PHPCAKE. Pero son muy grande y tienen muchas cosas que nunca voy a usar. (o al menos por ahora). Además de tener una curva de aprendizaje bastante dura.

Existe alguna librería mucho más sencillas que estas (principalmente para las queries) y me ahorre el trabajo de hacerlo yo mismo.


Gracias
  #2 (permalink)  
Antiguo 10/07/2009, 06:33
 
Fecha de Ingreso: junio-2001
Ubicación: Cd. Madero, Tam
Mensajes: 83
Antigüedad: 22 años, 9 meses
Puntos: 0
Respuesta: Crear libreria php muy simple o buscar una creada?

Para base de datos existen frameworks como creole o propel
  #3 (permalink)  
Antiguo 10/07/2009, 07:53
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Respuesta: Crear libreria php muy simple o buscar una creada?

si estas son las webs http://propel.phpdb.org/ y http://creole.phpdb.org/ deben estar con problema porque no se cargan.
  #4 (permalink)  
Antiguo 10/07/2009, 10:09
 
Fecha de Ingreso: marzo-2009
Mensajes: 50
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Crear libreria php muy simple o buscar una creada?

La respuesta depende de tus necesidades, si solo son cosas muy basicas no tiene caso que te compliques con un framework como propel, creole, o doctrine, que aunque son muy utiles no son siempre lo mas adecuado, yo uso un script que llamo mediante un include y ejecuto mis queries a MySQL simplemente con
Código:
$resultados = query("SELECT.....");
y me regresa un array listo para trabajar.

te paso el codigo, tal vez e sirva:
Código:
<?php
function query($query,$assoc=1) {
$r = @mysql_query($query);

if( mysql_errno() ) {
$error = 'MYSQL ERROR '.mysql_errno().' : ' . mysql_error().'<br />Your query:<br />'. $query;
echo($error); return FALSE;
}

if ( strtolower(substr($query,0,6)) != 'select' ) {
return array(mysql_affected_rows(),mysql_insert_id());
}

$count = @mysql_num_rows($r);

if ( !$count ) {
return 0;
}

if ($count == 1) {
if ($assoc) {
$f = mysql_fetch_assoc($r);
} else {
$f = mysql_fetch_row($r);
}

mysql_free_result($r);
if (count($f) == 1 ) {
list($key) = array_keys($f);
return $f[$key];
} else {
$all = array();
$all[] = $f;
return $all;
}

} else {

$all = array();
for( $i = 0; $i < $count; $i++ ) {
if( $assoc ) $f = mysql_fetch_assoc($r);
else $f = mysql_fetch_row($r);
$all[] = $f;
}
mysql_free_result($r);
return $all;
}
}
?>
__________________
Saludos
Carlos Hocker
www.quelohagaungeek.com - Tu diseñas, nosotros codificamos.

Última edición por Hocker; 10/07/2009 a las 10:09 Razón: typo
  #5 (permalink)  
Antiguo 13/07/2009, 10:34
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Respuesta: Crear libreria php muy simple o buscar una creada?

gracias hocker, esto es exactamente lo que quiero crear, solo unas cuantas funciones para ahorrar codigo repetido.
A partir del tuyo veré como seguir.
saudos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:51.