Разница между системой и shell_exec

В чем разница между shell_exec и system методами в PHP?

Оба берут один аргумент командной строки и запускают это в PHP. Лучше ли использовать один над другим?

С системой можно зафиксировать код возврата. Уже с shell_exec невозможно.

См. Объяснение здесь:

http://chipmunkninja.com/Program-Execution-in-PHP%3A-exec-m@

Я думаю, что основное отличие заключается в том, что PHP работает в безопасном режиме. Система все еще будет работать с некоторым ограничением, как описано в документации, однако shell_exec будет отключен.