Funkce shell_exec PHP: spustit externí příkaz

Prakticky všechny programovací jazyky zahrnují schopnost spustit externí kód nebo příkazový shell shell operační systém. Přítomnost takové možnosti je považována za pravidlo slušnosti a plné funkčnosti jazyka. Použití takové příležitosti je považováno za bezpečnostní hrozbu a nedostatek plné funkčnosti programu napsaného v jazyce. PHP dává programátorovi schopnost spustit externí příkaz a poskytuje přenos výsledků běhu do proměnné ve formě textu.

Provozní prostředí a externí tým

Volba není obzvláště velká, ale rozmanitost možností může dát slepou uličku. Pokud je server se systémem PHP spuštěn systémem Windows, nebudou tam žádné zvláštní nepředvídatelné situace. V rodině Linuxxoids jsou možné různé nejistoty.


Spuštění externího kódu je v každém případě hrozbou. Proto je použití funkce shell_exec () PHP dobře zvažované a dobře zvažované řešení. Typicky je cílem takové příležitosti pravidelně spouštět externí aplikaci, která shromažďuje informace a přesune je do složek webových zdrojů. Často používané spouštění externího kódu pro přenos statistik webu, finanční zprávy atd. Existuje spousta možností, kdy správa webového zdroje vyžaduje "externí pomoc", ale většinou, když se jakýkoli kontakt s "externím prostředím" provádí samostatně, bez použití PHP shell_exec ().

Syntaxe a logika použití

VoláníExterní kód se provádí přiřazením výsledku volání funkce shell_exec () proměnné.
V tomto případě apache & amp; PHP nainstalováno v počítači se systémem Windows 10. Problémy s cyrilským skriptem se objevily okamžitě a nesrovnalosti ve výstupních tocích příkazu do operačního systému normálního toku vnímány prohlížečem. Chcete-li správně zobrazit výstup, musíte analyzovat funkci shell_exec (). V PHP by příklady testování měly být co nejdůkladnější, aby bylo dosaženo bezpečného používání.
Libovolný operační systém umožňuje vytvoření příkazového řádku, když jsou zapisovány několik příkazů na řádek najednou. Funkce shell_exec umožňuje použití takového příkazového řádku. Ve všech případech by použití funkce mělo zahrnovat soubor testovacích případů, na kterých se kontroluje bezpečnost přístupu k operačnímu systému.

Související publikace