Мое понимание Symfony иногда не звездное. Я только столкнулся с этой проблемой, и я действительно не уверен, как передать переменную в этой ситуации, и, к сожалению, не уверен, что посмотреть, чтобы лучше понять, что я делаю.
Я не могу использовать $this->getUser
внутри класса, так как он (очевидно?) Находится вне схемы Symfony, поэтому хранить его в сеансе не вариант.
Я пробовал разные способы передачи переменной, но ... я думаю, что я просто не делаю это правильно из-за неясности того, как этот обмен информацией работает в этой ситуации.
Код здесь, находится в папке apps / frontend / lib:
public function postCompletedForm( $campaign_id, $hp_affiliate_id, $params = array(), &$response )
{
$params[ 'ip_address' ] = $_SERVER[ 'REMOTE_ADDR' ];
if ( isset( $ip_override )) //this is what I need to pass in
{
$params[ 'ip_address' ] = $ip_override;
}
$params[ '__timestamp' ] = date( 'Y-m-d H:i:s' );
$response = $this->sfWebBrowser->post( $this->api_endpoint . 'post/' . $campaign_id . '/' . $hp_affiliate_id . '/', $params )->getResponseText();
return ( preg_match( '/(1<\/SUCCESS>)/', $response ) ) ? true : false;
}
Используется также действием в модуле внутри интерфейса. Это действительно совсем не большая работа, и я знаю, что ответ будет мучительно простым. Я просто не уверен, что искать, так как то, что я знаю о php и фреймворке, подводит меня.
Спасибо за любую помощь! Я прошу прощения, если это смешной вопрос. Есть некоторые аспекты php, которые я до сих пор не затронул, как ни странно.