Вызов платформы Zend к неопределенному методу ZendHttpRequest:: getServer()


У меня есть контроллер, который, когда запрос Post, получает запрос, и оттуда я получаю REMOTE_ADDR, и REQUEST_TIME. Код работает просто отлично, я получаю ту информацию, которая мне нужна.

Однако я пишу интеграционный тест для всего потока моего веб-приложения, и когда я отправляю запрос, я получаю вызов неопределенного метода ZendHttpRequest::getServer (), когда он достигает этой точки моего действия в контроллере.

$server = $this->getRequest()->getServer();
$remoteAddr = $server['REMOTE_ADDR'];
$timestamp = $server['REQUEST_TIME'];

Когда я это делаю

$request = $this->getRequest();

И посмотрите на $ request, он имеет метод, uri, queryParams, postParams, fileParams, версию, заголовки, метаданные и содержимое. в postData есть все, что я отправляю через свой тест, но он падает, когда доходит до точки получения сервера.

Есть идеи?

Спасибо.

1 2

1 ответ:

Класс запроса, который использует ваше приложение, является Zend\Http\PhpEnvironment\Request, который расширяет Zend\Http\Request с некоторыми специфичными для PHP вещами, такими как getServer(). Измените свой тест, чтобы использовать его, и он должен работать нормально.