$ _ SERVER ['REQUEST_METHOD'] не будет установлен из-за отсутствия HTTP-запроса.Я думаю, что определенные ('STDIN') или isset ($ argc) тоже надежны.Если бы это зависело от меня, я бы, вероятно, пошел с определенным ('STDIN'), поскольку я могу себе представить, что кто-то случайно установил значение в $ argc.
Вышеупомянутая функция php_sapi_name кажется другойсамый надежный?) способ определить это, хотя я думаю, что было бы неплохо прочитать все уловки: помните, что разные серверы будут давать разные ответы.