2015-04-23 3 views

ответ

1

invalidate()

Clears all session data and regenerates session ID. Do not use session_destroy().

Это на самом деле то, что вы хотите.

Источник & подробнее: http://symfony.com/doc/current/components/http_foundation/sessions.html

Кроме того, такие вещи легко проверить, просто просмотрите источник.

В этом случае следует проверить Session или SessionInterface источник:

http://api.symfony.com/2.6/Symfony/Component/HttpFoundation/Session/SessionInterface.html

http://api.symfony.com/2.6/Symfony/Component/HttpFoundation/Session/Session.html

Edit.

Конечно, этот метод относится к классу Session, поэтому вам необходимо получить доступ к объекту Session сначала в вашем контроллере.

Так мы идем:

http://symfony.com/doc/current/book/controller.html#managing-the-session

и мы видим, как это сделать:

public function indexAction(Request $request) 
{ 
    $session = $request->getSession(); 

    $session->invalidate(); //here we can now clear the session. 
} 
+0

следующая ошибка произошла Пытались вызвать функцию "недействительным" из пространства имен «Home \ HomeBundle \ Controller –

+0

Это метод объекта 'Session', а не' Controller'. Сначала вы должны получить доступ к объекту 'Session'. См. Мой отредактированный ответ. –

+0

спасибо, что решил мой pr oblem :) еще одна queastion ... прямо сейчас я делаю это, чтобы начать сеанс в действии $ session = new Session(); $ this-> session-> start(); Я хочу написать это $ session = new Session(); в конструкторе и использовать его во всех действиях контроллера. как я могу это сделать, я не могу найти его синтаксис где угодно. –

Смежные вопросы