<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// စိတ်တိုင်းပြုSessionHandler</span></span><span>
</span><span><span class="hljs-class"><span class="hljs-keyword">class</span></span></span><span> </span><span><span class="hljs-title">CustomSessionHandler</span></span><span> </span><span><span class="hljs-keyword">extends</span></span><span> </span><span><span class="hljs-title">SessionHandler</span></span><span>
{
</span><span><span class="hljs-keyword">public</span></span><span> </span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">create_sid</span></span><span>(</span><span><span class="hljs-params"></span></span><span>)
{
</span><span><span class="hljs-comment">// ဒီမှာ16ကျပန်း string ကို byte + လက်ရှိ timestamp သည် session တစ်ခုပါရှိသည်ID,ထူးခွားတဲ့နှင့်ခန့်မှန်းရခက်ဖြစ်ရန်အာမခံပါသည်</span></span><span>
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-title function_ invoke__">bin2hex</span></span><span>(</span><span><span class="hljs-title function_ invoke__">random_bytes</span></span><span>(</span><span><span class="hljs-number">16</span></span><span>)) . </span><span><span class="hljs-string">'-'</span></span><span> . </span><span><span class="hljs-title function_ invoke__">time</span></span><span>();
}
}
</span><span><span class="hljs-comment">// 实例化စိတ်တိုင်းပြု的ပရိုဆဲှသူ</span></span><span>
</span><span><span class="hljs-variable">$handler</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title class_">CustomSessionHandler</span></span><span>();
</span><span><span class="hljs-comment">// 设置စိတ်တိုင်းပြု的Sessionပရိုဆဲှသူ</span></span><span>
</span><span><span class="hljs-title function_ invoke__">session_set_save_handler</span></span><span>(</span><span><span class="hljs-variable">$handler</span></span><span>, </span><span><span class="hljs-literal">true</span></span><span>);
</span><span><span class="hljs-comment">// စတင်တည်ထောင်သည်Session,使用စိတ်တိုင်းပြု会话IDစည်းမျဉ်းစည်းကမ်းတွေကို generate</span></span><span>
</span><span><span class="hljs-title function_ invoke__">session_start</span></span><span>();
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ယခုSession ID:"</span></span><span> . </span><span><span class="hljs-title function_ invoke__">session_id</span></span><span>();
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Session_Save_Handler () ၏ဒုတိယ pareter သည် မှန်ကန် ရန်သတ်မှတ်ထားခြင်းဖြစ်သည်။ ဆိုလိုသည်မှာ PHP သည် Open () , Read () , Read (), Reader () , Reader (), CONDER () , GC (), GC (), GC () , sessionhandler ကို အမွေဆက်ခံပြီးနောက်, ပုံမှန်အပြုအမူအားလုံးကိုပြန်လည်ရေးရန်မလိုဘဲထိန်းသိမ်းထားသည်။
Create_sid () သည် session ID များကိုထုတ်လုပ်ရန်အတွက်သာတာဝန်ရှိကြောင်းနှင့် session data ၏သိုလှောင်မှုယုတ္တိဗေဒမပါ 0 င်ပါ။
Session ID ပ conflicts ိပက်ခများကိုရှောင်ရှားရန်ထုတ်လုပ်ထားသော ID ကျပန်းနှင့်ထူးခြားသင့်သည်။
Session ID ကိုစိတ်ကြိုက်ပြုလုပ်ပြီးနောက် Session ID ပုံစံအဟောင်းသည်သဟဇာတမဖြစ်စေရပါ။
သက်ဆိုင်သောတက်(ဂ်)များ:
SessionHandler