Quelle est la différence entre escapeshellarg et escapeshellcmd?

PHP a 2 aux fonctions connexes, escapeshellarg() et escapeshellcmd(). Ils semblent tous deux à faire la même chose, à savoir d'aider à faire une chaîne de plus sûr à utiliser dans system()/exec()/etc.

Qui dois-je utiliser? Je veux juste être en mesure de prendre une entrée de l'utilisateur et exécuter une commande sur elle, et ne pas avoir à tout faire sauter. Si PHP a un exec-type de la fonction qui a eu un tableau de chaînes de caractères (comme argv), qui contourne la coquille, je voudrais l'utiliser. Semblable à Python sous-processus.call() fonction.

InformationsquelleAutor Rory | 2009-12-10