Foros del Web » Programando para Internet » PHP »

Creando librerias para PHP

Estas en el tema de Creando librerias para PHP en el foro de PHP en Foros del Web. Que tal. Me gustaria saber como puedo crear una libreria para PHP a partir de un Script, resulta que acabo de programar una clase para ...
  #1 (permalink)  
Antiguo 02/12/2003, 22:48
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 14 años, 2 meses
Puntos: 4
Creando librerias para PHP

Que tal. Me gustaria saber como puedo crear una libreria para PHP a partir de un Script, resulta que acabo de programar una clase para un reporteador, pero es muy molesto estarlo incluyendo en cada script. Asi es de que me resulta mas facil cargarlo como libreria y utilizarlo desde cualquier path en mi servidor.
  #2 (permalink)  
Antiguo 03/12/2003, 10:18
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pues si has creado una clase .. tan sólo llamala en tus scripts que la usen con:

Código PHP:
include("ruta/tuclase.php");

//y la usas
$nose=new tuclasse();
//etc 
Puedes usar también require() .. include_once() .. require_once() ..

Donde tuclase.php contiene el código de esa classe sólo .. o más classes, funciones o código que quieras incluir en tus scripts...

Usa rutas absolutas de tu servidor para llamar a tu "libreria" y no tendrás problemas.

más info:
www.php.net/include

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 03/12/2003, 16:38
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 14 años, 2 meses
Puntos: 4
muchas gracias por tu ayuda, pero lo que yo queria es crear una libreria, he creado varias clases y funciones pero no quiero complicarmela con el require, solo quiero compilar un script para que se convierta en un archivo .dll digamos funciones.dll y nadamas configurar PHP para que cargue la libreria, sialguien sabe como crearlas, les agradeceria que me dijeran, o diganme si no se puede hacer.
  #4 (permalink)  
Antiguo 03/12/2003, 16:54
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Asi qu elo que quieres es crear una extension nativa. Pues para eso creo que tienes que programar en C usando las funciones del Zend engine. Mas info en http://www.php.net/manual/en/zend.php

Aunque en mi opinion es liarse demasiado. Lo del require es muchisimo mas sencillo.

Por cierto, existe la directiva auto_preppend_file (http://www.php.net/manual/en/configu...directives.php) que sirve para incluir un fichero automaticamente antes del script a cargar. Pero por lo que veo es a nivel de servidor PHP (php.ini) o a nivel de directorio (.htaccess) donde lo puedes especificar.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 03/12/2003, 21:30
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Como dice Josemi .. si quieres compilar tus librerias .. para comenzar deberías programarlas en C para que puedas crear tu versión .dll para PHP bajo windows y C a secas para Linux y otros.

Si lo haces así el rendimiento de tus aplicaiones será mucho mejor. Pero .. ¿"vale la pena"? .. sobre todo cuando en muchas ocasiones vas a depender de un servicio de hosting para publicar tus aplicaciones donde No tienes control sobre la instalación de PHP (y configuración) como para poder instalar tus .dll o C librerias (y tiene desactivado por seguridad ("safe mode" por ejemplo) la carga dinámica de librerias via dl() ... que para el caso vendría a ser el mismo "engorro" de hacer tu include() ).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 11:16.