Foros del Web » Programando para Internet » PHP »

Consejos para crear clases.php dinamicamente

Estas en el tema de Consejos para crear clases.php dinamicamente en el foro de PHP en Foros del Web. Hola gente. Mi objetivo es crear clases dinamicamente. Dichas clases tienen 60 lineas de codigo. Para crearlas usaba algo asi: Código PHP: $nombreClase = "modulo1"; $gestor = fopen($archivo, "w");  fwrite($gestor, " ...
  #1 (permalink)  
Antiguo 09/02/2010, 07:40
 
Fecha de Ingreso: junio-2008
Ubicación: Capital Federal xD
Mensajes: 1.208
Antigüedad: 15 años, 9 meses
Puntos: 35
Consejos para crear clases.php dinamicamente

Hola gente.
Mi objetivo es crear clases dinamicamente. Dichas clases tienen 60 lineas de codigo.
Para crearlas usaba algo asi:
Código PHP:
$nombreClase = "modulo1";
$gestor = fopen($archivo, "w"); 
fwrite($gestor, "<?php class $nombreClase ........ ? >");
pero ese string de fwrite es cada vez mas largo. Como tengo un template.php genérico de las clases
pensaba en usar algo asi como un include de ese template en el fwrite pero no funcionó.
A su vez otro problema que surgiría es como pasarle el $nombreClase al template.
En fin quizas uds. puedan aconsejarme en esto. De momento será todo un gran string.
Gracias.
__________________
I am Doyle please insert code.
  #2 (permalink)  
Antiguo 09/02/2010, 10:28
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Consejos para crear clases.php dinamicamente

pues de hecho el include es la mejor opción, solo hay que hacerlo coherentemente...

template.php
Código PHP:
<?php echo '<'?>?
class <?php echo $className?> {
}
y en tu script...
Código PHP:
$className 'Foo';

ob_start();
include 
'template.php';
$out ob_get_contents();
ob_end_clean();

$tmp fopen('bar.php''w+');
fwrite($tmp$out);
fclose($tmp); 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: consejos, dinamicamente
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:44.