Использование подклассов с Zend_Rest_Server

Zend_Rest_Server и Zend_Rest_Client патетически недостаточно документированы, так что я продолжаю сталкиваться с этими неприятно раздражающими проблемами.

Итак, чтобы упростить методы API, я бы вызвал Zend_Rest_Server() и затем установил класс сервера на "X", что, в свою очередь, расширило бы мой класс "api_server". И в моем классе api_server я бы поместил такие вещи, как аутентификация, обработка хеш-ключа и все такое.

Но как только я использую "class mdb extends api_server {" вместо просто "class mdb {", мое приложение api умирает. Без ошибок. Ничего в логах. нет выхода. Вот код:

$server = new Zend_Rest_Server();
$server->setClass("mdb");
$server->handle();


class mdb extends api_server { .... }

И как только я удаляю весь "extends api_server", он будет работать (хотя у меня нет никаких методов аутентификации для сервера, поэтому он не работает, но сервер работает и отвечает..

Так это какой-то недокументированный лимит Zend_Rest_Server() или я делаю что-то действительно глупое?

Это не касается автозагрузки, даже если мне потребуется файл, в котором хранится класс api_server, он не будет работать.

1 ответ

Решение

Очевидно, что если вы расширяете другой класс, вам нужно сначала определить его, поэтому правильный синтаксис будет следующим:

class mdb extends api_server { .... }

$server = new Zend_Rest_Server();
$server->setClass("mdb");
$server->handle();
Другие вопросы по тегам