sed es un comando en linux para sustituir palabras o caracteres de un archivo, me gustaria saber si este comando existe en php o algo parecido, gracias
bichomen
| |||
Directamente no existe en PHP tal función .. pero si que tienes funciones para "abrir" tu archivo (hacia un string por ejemplo) y de ahí aplicar funciones de tratamiento de cadenas (strings) para buscar tu palabra o sustituirla como por ejemplo vía expresiones regulares. También puedes usar tu própio comando de Linux bajo funciones como exec(), system() y afines que sirven para ejecutar desde PHP comandos como si estuvieses en la "consola" (Shell) del S.O. que uses tu servidor. Un saludo, |
| ||||
Pues creo q el comando q mas se le ajusta es el exec() pero no funciona, osea al script le paso un archivo, que es donde tiene q realizar los cambios y luego la salida lo hace en otro archivo q si no existe lo crea, esto desde la shell de linux me funciona a la perfeccion con este script, pero cuando lo intento ejecutar desde php con exec() no hace nada, el codigo es este: <?php exec("script fichero1 fichero2"); ?> donde fichero1 es el archivo a procesar y fichero2 es el archivo resultante, e probado poner las rutas absolutas, e dado permisos de escritura a las carpetas pertinentes, pero nada, tb e probado system() y otros :( bichomen
__________________ "Se sabe con exactitud, con cuanta imprecisión, se sabe algo" Linux Registered User #320332 |
| |||
Tienes que tener encuenta las restricciones del usuario con que PHP "sale" al S.O. (nobody o el que use Apache normalmente). E indicar a ser posible las rutas hacia tu "script". También tienes dentro de la función exec() o system() parámetros para obtener el mensaje de error de la ejecución de tu comando .. por ejemplo tanto de la própia ejecución de tu exec() en sí (problemas de permisos .. etc) hasta de los mensajes del S.O. que arroje este. Así podrás evaluar bien el problema. Un saludo, |