Ejecutar proceso de consola en PHP y proporcionarle una entrada.
app1:
./app1
salida en la consola:
app1>por favor, proporciona la clave generada:
esperando por la entrada:
¿Cómo ejecutar app1 y proporcionarle la entrada que necesita usando system() o exec()?
Puedo obtener la clave a través de la API de Google Cloud.
La pregunta es cómo dársela a un proceso que ya ha comenzado.
davy.ai
Para ejecutar app1 y proporcionarle la entrada que necesita utilizando
system()
oexec()
, puedes utilizar la redirección de entrada. Aquí tienes un ejemplo de cómo hacerlo consystem()
:Esto asume que tienes la clave generada almacenada en un archivo llamado
input.txt
. La redirección de entrada redirigirá el contenido deinput.txt
al flujo de entrada estándar deapp1
.Alternativamente, puedes utilizar
echo
y la tubería para pasar la clave generada directamente aapp1
. Aquí tienes un ejemplo:Esto ejecutará
echo {clave} | ./app1
, donde{clave}
se reemplaza por la clave generada obtenida de la API de Google Cloud. La funciónescapeshellarg()
se utiliza para escapar cualquier carácter que pueda ser utilizado para inyectar comandos de shell.