如何在Yii 2中检索会话值

时间:2016-12-28 11:38:56

标签: php yii2

当我将产品添加到购物车会话并获取会话购物车价值时,我遇到了Yii 2会话的问题。

GET /haystack/modelresult/_search?_source=true [status:400 request:0.001s]
Failed to query Elasticsearch using '(code)': TransportError(400, 'parsing_exception')
Traceback (most recent call last):
  File "c:\python34\lib\site-packages\haystack\backends\elasticsearch_backend.py", line 524, in search
_source=True)
  File "c:\python34\lib\site-packages\elasticsearch\client\utils.py", line 69, in _wrapped
    return func(*args, params=params, **kwargs)
  File "c:\python34\lib\site-packages\elasticsearch\client\__init__.py", line 527, in search
    doc_type, '_search'), params=params, body=body)
  File "c:\python34\lib\site-packages\elasticsearch\transport.py", line 307, in perform_request
    status, headers, data = connection.perform_request(method, url, params, body, ignore=ignore, timeout=timeout)
  File "c:\python34\lib\site-packages\elasticsearch\connection\http_urllib3.py", line 93, in perform_request
    self._raise_error(response.status, raw_data)
  File "c:\python34\lib\site-packages\elasticsearch\connection\base.py", line 105, in _raise_error
    raise HTTP_EXCEPTIONS.get(status_code, TransportError)(status_code, error_message, additional_info)
elasticsearch.exceptions.RequestError: TransportError(400, 'parsing_exception')
[28/Dec/2016 17:58:50]"GET /search/?q=code HTTP/1.1" 200 395

我得到了这条线。

session_start();
print_r($_SESSION);
exit;

同时尝试Yii 2方式:

Array ( [__flash] => Array ( ) [__id] => 65 )

我得到了这个值:

$session = Yii::$app->session;
print_r($session);
exit;

如何使用Yii 2中的键和值获取会话数据?

6 个答案:

答案 0 :(得分:1)

您可以使用$session = Yii::$app->session;获取会话,希望它可以帮助您:)

答案 1 :(得分:0)

如果您使用的是YII2框架,则无需启动会话。 请遵循以下步骤: 1. $ session = Yii :: $ app-> session; 2. $ session-> set('key','value'); 3. $ session-> get('key');

否则直接设置值

$会话[ '键'] => '值'

答案 2 :(得分:0)

您可以使用

获取会话ID
Yii::$app->user->id
//OR
Yii::$app->user->identity->id

您可以使用

设置新会话
$session = Yii::$app->session;
$session->set('new-name-session', '1234');

使用

检查所有会话
var_dump($_SESSION);exit;

答案 3 :(得分:0)

您好,您可以使用以下步骤轻松设置或检索yii2中的会话值

1)在var'userVariable'

上设置会话值
Yii::$app->session->set('userVariable','1234');

2)获取var'userVariable'的会话值

$userVariable = Yii::$app->session->get('userVariable');

答案 4 :(得分:0)

首先,您需要打开会话

Yii::$app->session->open();

您可以使用$_SESSION

获取所有会话
var_dump($_SESSION);exit;

可能有用!

答案 5 :(得分:0)

您需要在Yii::$app->session循环中处理for/foreach对象,如下所示:

foreach (Yii::$app->session as $key => $value) { 
        var_dump($value); 
}