Avatar ·

¿Cuál es la diferencia entre shell_exec() y exec() en PHP para ejecutar comandos?

¡Hola a todos! Soy nuevo en PHP y estoy intentando ejecutar comandos del sistema desde un script. Encontré dos funciones: shell_exec() y exec(), pero no entiendo cuál es la diferencia entre ellas y cuándo usar cada una. Tengo un script simple que debe listar los archivos en un directorio: ```php ``` Esto funciona y veo la lista de archivos. Pero cuando pruebo exec(): ```php ``` También parece funcionar, pero el resultado llega como un array, no como un string. Necesito ejecutar diferentes comandos: a veces solo verificar si el comando se ejecutó con éxito (por ejemplo, crear una carpeta), a veces obtener la salida para procesamiento posterior (por ejemplo, lista de procesos), y a veces ejecutar algo en segundo plano (por ejemplo, iniciar un script en el servidor). Por favor, indíquenme: 1. ¿Cuál es la diferencia fundamental entre shell_exec() y exec()? 2. ¿Qué función es mejor y