system() Функция Функция
Система в PHP принимает строковый аргумент, с помощью команды для выполнения, а также любые аргументы, которые вы хотите, переданных этой команде. Эта функция выполняет указанную команду и выгружает любой результирующий текст в выходной поток (либо выход HTTP в ситуации веб-сервера, либо консоль, если вы используете PHP в качестве инструмента командной строки). Возврат этой функции является последней строкой вывода из программы, если она выводит текст.
exec() Функция Функция
система является весьма полезным и мощным, но одна из самых больших проблем, с ним в том, что все в результате чего текст из программы идет непосредственно в выходной поток. Будут ситуации, когда вы можете отформатировать полученный текст и отобразить его каким-либо другим способом или вообще не отображать его.
Для этого функция exec в PHP отлично адаптирована. Вместо того, чтобы автоматически сбрасывать весь текст, сгенерированный программой выполняется в выходной поток, это дает возможность поместить этот текст в массив, возвращаемый в качестве второго параметра функции:
shell_exec() Функция
Большинство программ, которые мы выполняли до сих пор, были, более или менее, настоящими программами1. Однако среда, в которой работают пользователи Windows и Unix, на самом деле намного богаче. У пользователей Windows есть возможность использовать программу командной строки Windows, cmd.exe. Эта программа называется командной оболочкой.
passthru() Функция
Одна увлекательная функция, PHP предоставляет аналогичные тем, которые мы видели до сих пор является функцией PassThru. Эта функция, как и другие, выполняет программу, о которой вы рассказываете. Тем не менее, он затем немедленно отправляет исходный вывод из этой программы в выходной поток, с которым работает PHP в настоящее время (например, HTTP в сценарии веб-сервера или оболочка в версии командной строки PHP).
proc_open() Функции и popen() функции
proc_open() похож на POPEN(), но обеспечивает гораздо большую степень контроля над выполнением программы. cmd - это команда, выполняемая оболочкой. descriptorspec - это индексированный массив, в котором ключ представляет номер дескриптора, а значение представляет, как PHP передает этот дескриптор дочернему процессу. pipe будет настроен на индексированный массив указателей файлов, которые соответствуют концу PHP любых создаваемых трубок. Возвращаемое значение представляет собой ресурс, представляющий процесс; вы должны освободить его, используя proc_close(), когда вы закончите с ним.
Кредиты: http://php.net/ & & Chipmunkninja (Ссылка не упоминается, потому что он не работает, 404 ошибка)
Существует также 'proc_open()' и 'popen()', оба из которых позволяют более высокую степень контроля над порожденным процессом. – Christian