У меня есть скрипт командной строки, который принимает целочисленное значение. (Это не подразумевается как флаг в getopt).
Я также использую getopt () для принятия некоторых флагов командной строки.
Иногда мои целые числа должны быть отрицательными. Тем не менее, отрицательные числа запускают getopt для их анализа (если не предшествует — для остановки обработки флага командной строки, что довольно уродливо, но может быть моей единственной опцией).
Есть ли изящный способ разрешить использование отрицательных чисел в командной строке без ‘-‘ и только с использованием стандартных библиотек / функций?
Примеры:
php box.php -r 5 some text arguments here
php box.php -r -5 some other text here # fails, as -5 is treated as a flag
php box.php -r -- -5 some other text here # workaround
(примечание: 5 и -5 не являются значениями для флага -r. -r является логическим флагом)
Задача ещё не решена.
Других решений пока нет …