Foros del Web » Programando para Internet » PHP »

Modificar archivo php por medio de php

Estas en el tema de Modificar archivo php por medio de php en el foro de PHP en Foros del Web. Hola foreros!, Necesito editar un archivo.php en mi servidor por medio de php. Buscando por google me he topado con codigo para editar codigo pero ...
  #1 (permalink)  
Antiguo 18/06/2009, 09:47
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Modificar archivo php por medio de php

Hola foreros!,

Necesito editar un archivo.php en mi servidor por medio de php. Buscando por google me he topado con codigo para editar codigo pero solamente por lineas.

Mi idea era editar una variable determinada del archivo php sin saber en que linea esta. Por ejemplo:
Código PHP:
<?php
    $variable_sonriente 
'yo estoy contento';
?>
Y que por medio de php... la covierta en y lo guarde en el mismo archivo:
Código PHP:
<?php
    $variable_sonriente 
'yo estoy enfadado';
?>
¿Como podria?
  #2 (permalink)  
Antiguo 18/06/2009, 10:00
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 17 años, 1 mes
Puntos: 48
Respuesta: Modificar archivo php por medio de php

plantilla.tpl

Código PHP:
<?php
$variable 
'{valor_variable}';
?>
tu_script.php

Código PHP:
<?php
// Configuracion rutas
$ruta_fichero_php_original "/ruta_fichero_original/fichero_original.php";
$ruta_plantilla_php "/ruta_plantilla/plantilla.tpl";

// Leemos plantilla
$contenido_plantilla file_get_contents($ruta_plantilla_php);

// Parseamos plantilla
$plantilla_parseada str_replace("{valor_variable}""yo estoy enfadado"$contenido_plantilla);

// Guardamos los cambios en el fichero original
$gestor fopen($ruta_fichero_php_original"w");
if(
fwrite($gestor$plantilla_parseada))
    echo 
"Escritura correcta";
else
    echo 
"No se pudo escribir en el fichero";
?>
Saludos!
  #3 (permalink)  
Antiguo 19/06/2009, 10:47
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Respuesta: Modificar archivo php por medio de php

Hola Synkronice,

Ufff... me sirvio de miedo el codigo, jeje...

Muchisimas gracias!
  #4 (permalink)  
Antiguo 19/06/2009, 10:50
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 17 años, 1 mes
Puntos: 48
Respuesta: Modificar archivo php por medio de php

Me alegro que te haya servido el código! Cualquier cosa aquí estamos.

Saludos!
  #5 (permalink)  
Antiguo 20/06/2009, 10:57
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Respuesta: Modificar archivo php por medio de php

Hola de nuevo,

Pues ahora me surge un problemilla, jeje... estuve usando el codigo que me diste y me funciono bien, hasta que decidi reemplazar una variable entera, es decir esto:
Código PHP:
$plantilla_parseada str_replace("$var_name_archive='reader.php'""$var_name_archive='mi_variable.php'"$contenido_plantilla); 
Ahora simplemente no lo reemplaza... se queda tal cual, jeje.

No creo que sea problema de las comillas... En mi php esa variable esta de este modo:

Código PHP:
$var_name_archive='reader.php'

¿Cual puede ser el problema?

Última edición por salbatore; 20/06/2009 a las 11:03
  #6 (permalink)  
Antiguo 20/06/2009, 11:08
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Respuesta: Modificar archivo php por medio de php

Hola hola!...

Me equivoque... jeje jeje... tenia mal escrita la variable, que paquete soy!... jeje

Hasta pronto!... ya siento molestaros, jeje.
  #7 (permalink)  
Antiguo 20/06/2009, 11:51
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Respuesta: Modificar archivo php por medio de php

Hola de nuevo...

Pues pensaba que me habia equivocado... pero no, jeje... tengo un problemilla que no se como solucionar. Yo usaba esta funcion para editar una variable del mismo archivo.php que ejecuta esta accion. Es decir:

Código PHP:
<?php
//como la variable esta encima de la funcion  no se reeemplaza, si estuviese debajo si lo haria... ¿la razon?
$variable '{valor_variable}';
// Configuracion rutas
$ruta_fichero_php_original "x.php";
$ruta_plantilla_php "x.php";


// Leemos plantilla
$contenido_plantilla file_get_contents($ruta_plantilla_php);

// Parseamos plantilla
$plantilla_parseada str_replace("$variable = '{valor_variable}'""$variable = '{aaaaaaaaaaaa}'"$contenido_plantilla);

// Guardamos los cambios en el fichero original
$gestor fopen($ruta_fichero_php_original"w");
if(
fwrite($gestor$plantilla_parseada))
    echo 
"Escritura correcta";
else
    echo 
"No se pudo escribir en el fichero";
    

echo 
$variable;
?>

La variable se sustituye si esta por debajo de la funcion que reemplaza la variable, pero si esta por encima no se reemplaza.

¿Existe alguna forma de hacer que estando la variable por encima de la funcion se reemplace su valor?... por si alguien le entra la duda... en la primera carga del este archivo no se ve el resultado logicamente, se ve al actulizar el documento.

¿Alguna solucion?

Última edición por salbatore; 20/06/2009 a las 11:58
  #8 (permalink)  
Antiguo 20/06/2009, 11:59
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 16 años, 3 meses
Puntos: 139
Respuesta: Modificar archivo php por medio de php

Código PHP:
//Como la variable esta por encima de la funcion de reemplazar... esta no se reemplaza... ¿cual es la razon?
$variable='caramelo';

// Configuracion rutas
$ruta_fichero_php_original "x.php";
$ruta_plantilla_php "x.php";


// Leemos plantilla
$contenido_plantilla file_get_contents($ruta_plantilla_php);

// Parseamos plantilla
 
$plantilla_parseada str_replace("$variable='caramelo'""".$variable='golosina'.""$contenido_plantilla);  


echo 
$variable
  #9 (permalink)  
Antiguo 20/06/2009, 12:06
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 7 meses
Puntos: 19
Respuesta: Modificar archivo php por medio de php

Hola gjx2...

Muchas gracias!... ya me funciona... que tonto fui!...

Menos mal que os tengo, jeje!...

Super gracias!.
  #10 (permalink)  
Antiguo 20/06/2009, 12:29
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: Modificar archivo php por medio de php

Usa comillas simples para los str_replace, para que las variables no se interpreten.
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 22:04.