es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Reemplazar el valor de una variable en un archivo JS utilizando Regex en PHP.

Quiero cambiar el valor de una variable en un archivo js usando php, lo que he intentado hasta ahora es obtener el contenido del archivo e intentar encontrar una fórmula de regex sólida para cambiar el valor de la variable:

Aquí está el contenido del archivo js, teniendo en cuenta que el valor puede ser cualquier cosa entre = y ;

// blah blah blah

const filename = ""; // puede ser filename = ''; o filename = null; o filename = undefined; y así sucesivamente

// blah blah blah

Intenté obtener esa línea exacta usando esto: preg_match

/(((\bconst\b)+\s(\bfilename\b)+\s)+\s=)[^\n]/is

Luego reemplacé el valor usando esto: preg_replace

/([\"\'])(?:(?=(\?))\2.)?\1/is // para obtener lo que está entre ""
o
/(?<=\=)(.
?)(?=\;)/is // para obtener lo que está entre = & ;

Luego reemplacé toda la línea nuevamente en el archivo usando la primera fórmula: preg_replace

/(((\bconst\b)+\s(\bfilename\b)+\s)+\s=)[^\n]/is

Estoy preguntando si hay un enfoque mejor, porque siento que esto es demasiado trabajo y no estoy seguro de la elegancia y el rendimiento de lo que hice hasta ahora.

NOTA: es un archivo de configuración de Rollup y obtendrá el nombre del paquete desde el controlador/método del método php actual >> es un escenario específico.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Generalmente, no es una práctica recomendada cambiar el valor de una variable en un archivo JavaScript usando PHP.

    Un enfoque mejor sería utilizar AJAX o fetch para enviar una solicitud al servidor y luego actualizar el valor de la variable en el lado del cliente utilizando JavaScript.

    Sin embargo, si necesitas cambiar el valor de la variable usando PHP, podrías considerar utilizar un motor de plantillas de JavaScript como Handlebars o Mustache para crear archivos de JavaScript dinámicos.

    Otra opción sería almacenar el valor de la variable en un archivo de configuración JSON separado y luego modificarlo usando PHP. Esto te permitiría separar las preocupaciones y facilitar el manejo de cambios en la configuración.

    En cualquier caso, es importante asegurarse de que cualquier cambio en el archivo JavaScript sea correctamente probado y validado para evitar posibles errores o problemas de seguridad.

Comments are closed.