PHP:
Читання аргументів командного рядка
How to: (Як це зробити:)
<?php
// Забрати аргументи, що були передані скрипту
$arguments = $argv;
unset($arguments[0]); // Перший аргумент завжди містить ім'я файлу скрипту
// Вивести аргументи
foreach ($arguments as $key => $value) {
echo "Arg #{$key}: {$value}\n";
}
// Приклад виклику: php script.php аргумент1 аргумент2
?>
Приклад виводу:
Arg #1: аргумент1
Arg #2: аргумент2
Deep Dive (Занурення у деталі):
Командний рядок існує давно, і майже всі мови програмування мають засоби для читання аргументів командного рядка. У PHP, $argv
- це масив, який містить аргументи, а $argc
- кількість цих аргументів. Звертайте увагу, що $argv[0]
завжди ім’я скрипту, тому його часто ігнорують при читанні аргументів.
Альтернатива $argv
- використання функції getopt()
, яка пропонує більш продвинуте розпізнавання параметрів, включно з іменованими опціями та коротким форматом.
Деталі реалізації читання аргументів командного рядка в PHP досить прості, але у професійних додатках могут бути використані розгалужені бібліотеки для кращої обробки аргументів, такі як Symfony Console.
See Also (Дивіться також):
- Офіційна документація PHP по роботі з аргументами командного рядка: php.net/manual/en/reserved.variables.argv.php
- Документація функції
getopt()
: php.net/manual/en/function.getopt.php - Symfony Console компонент: symfony.com/doc/current/components/console.html