Доступ к классу sfConfig в приложениях / appname / lib - PullRequest
0 голосов
/ 07 октября 2011

У меня есть приложение Symfony 1.4 с некоторыми классами для подключения к веб-службе SOAP, которое хранится в apps / appname / lib. Когда я пытаюсь получить доступ к классу sfConfig, чтобы получить некоторые переменные, которые я установил в app.yml, выдается ошибка, поскольку приложение не распознает sfConfig::get('app_myvar') как метод, вызываемый в классе.

Как сделать класс sfConfig доступным для классов в моем каталоге apps / appname / lib?

Это ошибка, которую я получаю

Parse error: syntax error, unexpected '(', expecting ',' or ';' in /Users/my/Sites/mySite/apps/frontend/lib/mySOAP.class.php on line 9

А вот и вершина моего класса:

class mySOAP extends SoapClient  {
  protected $client = null;
  protected $soapUrl = sfConfig::get('app_my_url');
  protected $options = array(
    'trace'             => 1,
    'exceptions'        => 1,
    'soap_version'      => SOAP_1_2,
    //'encoding'            => 'ISO-8859-1',
    'features'          => SOAP_SINGLE_ELEMENT_ARRAYS

Строка 9 -

protected $soapUrl = sfConfig::get('app_my_url');

1 Ответ

1 голос
/ 07 октября 2011

Класс sfConfig загружается автоматически при загрузке стека Symfony. Поэтому, если вы используете index.php (или любой другой контроллер внешнего интерфейса) или CLI, у вас должен быть доступ к sfConfig.

Так что я думаю, что вы либо не успешно установили стек Symfony (хотя это должно выкинуть другие ошибки на более ранней стадии), либо пытаетесь получить доступ к app.yml из сценария вне Symfony? В последнем случае вы можете либо загрузить Symfony, либо включить синтаксический анализатор sfYaml и самостоятельно проанализировать app.yml.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...