function name: sessionshandler :: ရေးပါ ()
သက်ဆိုင်သောဗားရှင်း - PHP 5> = 5.4.0, PHP 7
function ကိုဖော်ပြချက် - sessionhandler :: ရေးရန် () နည်းလမ်းကို session data ရေးရန်အသုံးပြုသည်။ ဤနည်းလမ်းကို session handler class မှအကောင်အထည်ဖော်သည်။
Syntax: SessionHandler :: ရေးပါ (string $ session_id, string_id_data): Bool
Parametermer
Value ကိုပြန်သွားပါ
ဥပမာ -
<?php class MySessionHandler implements SessionHandlerInterface { // 实现SessionHandlerInterface 接口中的write 方法public function write($session_id, $session_data) { // 将会话数据保存到数据库或其他持久存储中// 假设这里使用数据库存储会话数据$db = new PDO('mysql:host=localhost;dbname=mydatabase', 'username', 'password'); $stmt = $db->prepare("INSERT INTO sessions (session_id, session_data) VALUES (:session_id, :session_data)"); $stmt->bindParam(':session_id', $session_id); $stmt->bindParam(':session_data', $session_data); return $stmt->execute(); } } // 设置自定义的会话处理程序$handler = new MySessionHandler(); session_set_save_handler($handler, true); // 启动会话session_start(); // 修改会话数据$_SESSION['username'] = 'john'; // 手动调用write 方法将会话数据写入持久存储session_write_close(); ?>
အထက်ပါဥပမာတွင် Session Handler Class MySessionHandler ကိုစိတ်ကြိုက်ပြုလုပ်ပြီး sessionhandlerinterface interface တွင်ရေးနည်းနည်းလမ်းကိုအကောင်အထည်ဖော်ရန်ဖြစ်သည်။ စာရေးနည်းတွင်ဒေတာဗေ့စ်နှင့်ချိတ်ဆက်ရန်နှင့် session ID နှင့် session id နှင့် session data များကိုထည့်သွင်းရန် PDO ကိုအသုံးပြုသည်။
ထို့နောက်ကျွန်ုပ်တို့သည်စိတ်ကြိုက် session handler ကို session_set_save_handler () function မှတဆင့်လက်ရှိ session ၏ handler သို့သတ်မှတ်ထားသည်။ ထို့နောက်ကျွန်ုပ်တို့သည် session ကိုစတင်ရန်နှင့် session data ကိုပြုပြင်မွမ်းမံ။ နောက်ဆုံးတွင်စာရေးနည်းကိုကိုယ်တိုင် session_write_close () နည်းလမ်းကိုခေါ်ဆိုခြင်းဖြင့်ကိုယ်တိုင်ခေါ်ဆိုခြင်းနှင့် session data ကိုအမြဲတမ်းသိုလှောင်ရန်ရေးသားထားသည်။
Session_set_saver_Handler () ကိုခေါ်ဆိုရန်လိုအပ်ကြောင်းသတိပြုပါ။ ထို့အပြင် Custom Session Handler ကိုအသုံးပြုပါက session data ကိုမြဲမြံစွာရေးထားရန်သေချာစေရန် script_write_close () နည်းလမ်းကိုသေချာစွာခေါ်ဆိုပါ။