Możliwe jest uruchomienie zewnętrznego polecenia za pomocą trzech funkcji PHP:
system();
exec();
shell_exec();
ale jakie są ich różnice? Pomimo ich specyficznych zastosowań, w większości przypadków można je jednakowo stosować. Jestem ciekawy, która z tych funkcji nich jest preferowana? Na przykład, do rozpakowania pliku lub kompresji folderu (za pomocą polecenia tar), który jest preferowany (prawdopodobnie z punktu widzenia wydajności)?
1 odpowiedź
exec - Wykonuje program zewnętrzny
system - Uruchamia program zewnętrzny i wyświetla dane wyjściowe
shell_exec - Wykonuje polecenie przez powłokę i zwraca pełne dane wyjściowe jako ciąg
więc jeśli nie potrzebujesz danych wyjściowych, wybrałbym exec.
Sprawdź sobie więcej informacji na ten temat:
http://php.net/manual/en/function.exec.php