is_logout
วิธีการใช้ฟังก์ชัน is_logout
is_logout
ฟังก์ชัน is_logout
ใช้สำหรับจัดการกระบวนการออกจากระบบ (Logout) โดยการลบข้อมูล access_token
ของผู้ใช้ในฐานข้อมูลและอัปเดตเวลาการล็อกอินล่าสุด
พารามิเตอร์
$access_tokens
(optional, default =null
) - โทเค็นการเข้าถึง (access_token
) ของผู้ใช้ หากไม่ได้ระบุ ฟังก์ชันจะพยายามดึงโทเค็นจากส่วนหัว HTTP (x-pna-uuid
)
ขั้นตอนการทำงาน
ตรวจสอบว่า
$access_tokens
ถูกส่งเข้ามาหรือไม่ หากไม่ระบุ ฟังก์ชันจะดึงโทเค็นจากส่วนหัว (x-pna-uuid
) ด้วยฟังก์ชันgetHeaders
ดึงข้อมูลโทเค็นจากฐานข้อมูล (
admin_access_tokens
) และอัปเดตเวลาการล็อกอินล่าสุดของผู้ใช้ในตารางadmin_member
หากการอัปเดตข้อมูลผู้ใช้สำเร็จ ฟังก์ชันจะลบข้อมูลโทเค็นจากตาราง
admin_access_tokens
และลบการเชื่อมต่อจากตารางadmin_connect
หากการลบสำเร็จ ฟังก์ชันจะลบคุกกี้ที่เก็บโทเค็นและส่งค่ากลับเป็น
true
หากเกิดข้อผิดพลาด ฟังก์ชันจะส่งข้อความแสดงข้อผิดพลาดกลับมา
ตัวอย่างการใช้งาน
ออกจากระบบโดยใช้โทเค็นในส่วนหัว
$result = $_PNA->is_logout(); if ($result === true) { echo "ออกจากระบบสำเร็จ"; } else { echo "เกิดข้อผิดพลาด: " . $result; }
ผลลัพธ์: ฟังก์ชันจะพยายามดึงโทเค็นจากส่วนหัวและลบข้อมูลในฐานข้อมูล หากสำเร็จจะคืนค่า
true
ออกจากระบบโดยระบุโทเค็น
$access_token = "12345-67890-abcdef"; $result = $_PNA->is_logout($access_token); if ($result === true) { echo "ออกจากระบบสำเร็จ"; } else { echo "เกิดข้อผิดพลาด: " . $result; }
ผลลัพธ์: ฟังก์ชันจะใช้โทเค็นที่ระบุในการลบข้อมูลในฐานข้อมูล หากสำเร็จจะคืนค่า
true
ผลลัพธ์ที่ได้:
หากการออกจากระบบสำเร็จ จะคืนค่า
true
หากเกิดข้อผิดพลาด จะคืนค่าข้อความแสดงข้อผิดพลาดจากฐานข้อมูล
หมายเหตุ: ฟังก์ชันนี้จะทำการอัปเดตและลบข้อมูลที่เกี่ยวข้องกับโทเค็นของผู้ใช้ในหลายตาราง (admin_access_tokens
, admin_connect
) และลบคุกกี้ที่ใช้เก็บโทเค็น
Last updated