<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # [獲取session對象](https://www.workerman.net/doc/workerman/http/session.html#%E8%8E%B7%E5%8F%96session%E5%AF%B9%E8%B1%A1) ~~~php $session = $request->session(); ~~~ **例子** ~~~php use Workerman\Worker; use Workerman\Connection\TcpConnection; use Workerman\Protocols\Http\Request; require_once __DIR__ . '/vendor/autoload.php'; $worker = new Worker('http://0.0.0.0:8080'); $worker->onMessage = function(TcpConnection $connection, Request $request) { $session = $request->session(); $session->set('name', 'tome'); $connection->send($session->get('name')); }; // 運行worker Worker::runAll(); ~~~ **注意事項** * session必須在`$connection->send()`調用之前操作。 * session在對象銷毀時會自動保存修改,所以不要把`$request->session()`返回的對象保存在全局數組或者類成員中導致session無法保存。 * session默認存儲在磁盤文件中,如果想要更好的性能建議使用redis。 ## [獲取所有session數據](https://www.workerman.net/doc/workerman/http/session.html#%E8%8E%B7%E5%8F%96%E6%89%80%E6%9C%89session%E6%95%B0%E6%8D%AE) ~~~php $session = $request->session(); $all = $session->all(); ~~~ 返回的是一個數組。如果沒有任何session數據,則返回一個空數組。 **例子** ~~~php use Workerman\Worker; use Workerman\Connection\TcpConnection; use Workerman\Protocols\Http\Request; require_once __DIR__ . '/vendor/autoload.php'; $worker = new Worker('http://0.0.0.0:8080'); $worker->onMessage = function(TcpConnection $connection, Request $request) { $session = $request->session(); $session->set('name', 'tom'); $connection->send(var_export($session->all(), true)); }; // 運行worker Worker::runAll(); ~~~ ## [獲取session中某個值](https://www.workerman.net/doc/workerman/http/session.html#%E8%8E%B7%E5%8F%96session%E4%B8%AD%E6%9F%90%E4%B8%AA%E5%80%BC) ~~~php $session = $request->session(); $name = $session->get('name'); ~~~ 如果數據不存在則返回null。 你也可以給get方法第二個參數傳遞一個默認值,如果session數組中沒找到對應值則返回默認值。例如: ~~~php $session = $request->session(); $name = $session->get('name', 'tom'); ~~~ **例子** ~~~php use Workerman\Worker; use Workerman\Connection\TcpConnection; use Workerman\Protocols\Http\Request; require_once __DIR__ . '/vendor/autoload.php'; $worker = new Worker('http://0.0.0.0:8080'); $worker->onMessage = function(TcpConnection $connection, Request $request) { $session = $request->session(); $connection->send($session->get('name', 'tom')); }; // 運行worker Worker::runAll(); ~~~ ## [存儲session](https://www.workerman.net/doc/workerman/http/session.html#%E5%AD%98%E5%82%A8session) 存儲某一項數據時用set方法。 ~~~php $session = $request->session(); $session->set('name', 'tom'); ~~~ set沒有返回值,session對象銷毀時session會自動保存。 當存儲多個值時使用put方法。 ~~~php $session = $request->session(); $session->put(['name' => 'tom', 'age' => 12]); ~~~ 同樣的,put也沒有返回值。 **例子** ~~~php use Workerman\Worker; use Workerman\Connection\TcpConnection; use Workerman\Protocols\Http\Request; require_once __DIR__ . '/vendor/autoload.php'; $worker = new Worker('http://0.0.0.0:8080'); $worker->onMessage = function(TcpConnection $connection, Request $request) { $session = $request->session(); $session->set('name', 'tom'); $connection->send($session->get('name')); }; // 運行worker Worker::runAll(); ~~~ ## [刪除session數據](https://www.workerman.net/doc/workerman/http/session.html#%E5%88%A0%E9%99%A4session%E6%95%B0%E6%8D%AE) 刪除某個或者某些session數據時用`forget`方法。 ~~~php $session = $request->session(); // 刪除一項 $session->forget('name'); // 刪除多項 $session->forget(['name', 'age']); ~~~ 另外系統提供了delete方法,與forget方法區別是,delete只能刪除一項。 ~~~php $session = $request->session(); // 等同于 $session->forget('name'); $session->delete('name'); ~~~ **例子** ~~~php use Workerman\Worker; use Workerman\Connection\TcpConnection; use Workerman\Protocols\Http\Request; require_once __DIR__ . '/vendor/autoload.php'; $worker = new Worker('http://0.0.0.0:8080'); $worker->onMessage = function(TcpConnection $connection, Request $request) { $request->session()->forget('name'); $connection->send('ok'); }; // 運行worker Worker::runAll(); ~~~ ## [獲取并刪除session某個值](https://www.workerman.net/doc/workerman/http/session.html#%E8%8E%B7%E5%8F%96%E5%B9%B6%E5%88%A0%E9%99%A4session%E6%9F%90%E4%B8%AA%E5%80%BC) ~~~php $session = $request->session(); $name = $session->pull('name'); ~~~ 效果與如下代碼相同 ~~~php $session = $request->session(); $value = $session->get($name); $session->delete($name); ~~~ 如果對應session不存在,則返回null。 **例子** ~~~php use Workerman\Worker; use Workerman\Connection\TcpConnection; use Workerman\Protocols\Http\Request; require_once __DIR__ . '/vendor/autoload.php'; $worker = new Worker('http://0.0.0.0:8080'); $worker->onMessage = function(TcpConnection $connection, Request $request) { $connection->send($request->session()->pull('name')); }; // 運行worker Worker::runAll(); ~~~ ## [刪除所有session數據](https://www.workerman.net/doc/workerman/http/session.html#%E5%88%A0%E9%99%A4%E6%89%80%E6%9C%89session%E6%95%B0%E6%8D%AE) ~~~php $request->session()->flush(); ~~~ 沒有返回值,session對象銷毀時session會自動從存儲中刪除。 **例子** ~~~php use Workerman\Worker; use Workerman\Connection\TcpConnection; use Workerman\Protocols\Http\Request; require_once __DIR__ . '/vendor/autoload.php'; $worker = new Worker('http://0.0.0.0:8080'); $worker->onMessage = function(TcpConnection $connection, Request $request) { $request->session()->flush(); $connection->send('ok'); }; // 運行worker Worker::runAll(); ~~~ ## 判斷對應session數據是否存在 ~~~php $session = $request->session(); $has = $session->has('name'); ~~~ 以上當對應的session不存在或者對應的session值為null時返回false,否則返回true。 ~~~ $session = $request->session(); $has = $session->exists('name'); ~~~ 以上代碼也是用來判斷session數據是否存在,區別時當對應的session項值為null時,也返回true。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看