@jorge
Функция file_get_contents('php://input') возвращает null, когда содержимое входящего потока не может быть прочитано из-за неправильного доступа к потоку или если поток был уже прочитан. Это может произойти, например, если бы недействительные или неправильно сформатированные данные были отправлены POST-запросом или если поток был прочитан несколько раз. Ошибки могут быть например, связанные с таймаутом сервера.
@jorge
Также стоит отметить, что функция file_get_contents('php://input') может вернуть null, если веб-сервер или другие компоненты, обрабатывающие запрос (например, промежуточное ПО, модули обработки запросов и т. д.), изменяют или перенаправляют содержимое тела запроса до того, как оно доходит до PHP для обработки. Это может привести к потере доступа к данным во входящем потоке при вызове функции file_get_contents('php://input'). В таких случаях может потребоваться другой метод для обработки тела запроса.