bash — PHP getopt () неожиданно не работает

У меня есть ежедневная работа cron, которая запускает скрипт PHP на моем размещенном веб-сервере:

Команда задания Cron: (xxxxxxxx — мое скрытое имя учетной записи веб-хостинга)

/usr/bin/php /home/xxxxxxxx/public_html/test.php -t 123qwe

Частичный код test.php:

// Get command line argument 't'.
$accesstoken = getopt("t:");
// If the passed token does not match, exit script.
if($accesstoken["t"] != '123qwe') exit();
// Run rest of script...

Приведенный выше код работал в течение двух лет, каждый день без проблем, до 3 января этого года.

Если я var_dump ($ accesstoken), я получаю ‘bool (false)’.

Я понятия не имею, почему это не работает. Я пытался использовать argv, но я доказал, что STDIN не определен:

if (defined('STDIN')) { echo("STDIN defined"); $type = $argv[1]; }
else { echo("STDIN NOT defined"); }

… echos ‘STDIN НЕ определено’.

Кто-нибудь знает о каких-либо недавних изменениях в Apache / PHP, которые могут быть причиной этого? Или есть флаг PHP, который может препятствовать работе getopt ()?

Любая помощь в этом будет оценена 🙂

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …