खोज…


Yii2 में सत्र

आयात सत्र कक्षा

use  yii\web\Session;

एक सत्र बनाएँ

$session = Yii::$app->session;
$session->open(); // open a session
$session->close();  // close a session

सत्र चर में मान संग्रहीत करें।

$session = Yii::$app->session;

$session->set('name', 'stack');
OR
$session['name'] = 'stack';
OR
$_SESSION['name'] = 'stack';

सत्र चर से मान प्राप्त करें।

$name = $session->get('name');
OR
$name = $session['name'];

सत्र चर निकालें

$session->remove('name');
OR
unset($session['name']);
OR
unset($_SESSION['name']);

$session->destroy(); // destroy all session 

सभी सत्र चर निकालें

$session->removeAll();

सत्र चर की जाँच करें

$session->has('name')
OR
isset($session['name'])
//both function return boolean value [true or false]

सत्र फ़्लैश

सत्र फ़्लैश सेट करें

$session = Yii::$app->session;
$session->setFlash('error', 'Error in login');

सत्र फ़्लैश प्राप्त करें

echo $session->getFlash('error');

सत्र फ़्लैश की जाँच करें

$result = $session->hasFlash('error');

सत्र फ़्लैश निकालें

$session->removeFlash('error');

सभी सत्र फ्लैश चर निकालें

$session->removeAllFlashes();

सीधे सत्र चर का उपयोग करें

सत्र चर सेट करें और प्राप्त करें

\Yii::$app->session->set('name','stack');
\Yii::$app->session->get('name');

सत्र फ्लैश

\Yii::$app->getSession()->setFlash('flash_msg','Message');
\Yii::$app->getSession()->getFlash('flash_msg');

सत्र चर बनाने और संपादित करने के लिए जो सरणियाँ हैं

सत्र चर को चर के रूप में सहेजें।

$session = Yii::$app->session;

$sess = $session['keys'];

फिर अपने इच्छित सरणी मान को बनाएं या अपडेट करें

$sess['first'] = 'abc';

और अंत में सत्र चर को बचाएं

$session['keys'] = $sess

बाद में फिर से आना URL याद रखें

मामले का उपयोग करें: एक अलग (संबंधित) नियंत्रक में एक नया रिकॉर्ड जोड़ने के बाद वापस जाने के लिए वर्तमान URL को याद रखें, उदाहरण के लिए एक चालान में जोड़ने के लिए एक नया संपर्क बनाएं।

InvoiceController / ActionUpdate:

Url::remember(Url::current(), 'returnInvoice');

संपर्क नियंत्रक / क्रिया:

if ($model->save()) {
    $return = Url::previous('returnInvoice');
    if ($return) {
        return $this->redirect($return);
    }
    // ...
}

एक बार पूरा करने के बाद आप याद किए गए URL को रीसेट कर सकते हैं:

InvoiceController / ActionUpdate:

if ($model->save()) {
    Url::remember(null, 'returnInvoice');
    // ...
}

इस उदाहरण में मुख्य नाम - returnInvoice - वैकल्पिक है।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow