Site icon บริษัท โค๊ดบี จำกัด

สอน codeigniter วิธีใช้งาน session ใน Codeigniter

php-codeigniter-framework

php-codeigniter-framework

สอน codeigniter วิธีใช้งาน session ใน Codeigniter

Session หรือ เว็บเซสชั่น (Web Session) คือตัวแปรที่ไคลเอนต์ (Client) สร้างขึ้นมาเมื่อเปิดเว็บบราวเซอร์
ไฟล์ session จะถูกเก็บไว้ที่ฝั่งเซิร์ฟเวอร์ โดยที่เราสามารถกำหนด path สำหรับเก็บไฟล์ได้เอง สำหรับ ci
เราสามารถระบุ session path ได้ที่ไฟล์ application/config/config.php ที่ตัวแปร sess_save_path
ซึ่ง session path จะไม่ไช่ url ของเว็บ แต่จะต้องเป็น Absolute Hosting Path

$config['sess_save_path'] = '/home/user/domains/domaian.com/public_html/temp

ตัวแปรแบบ session มักถูกนำไปใช้กับระบบหลัก ๆ ดังนี้

เริ่มต้นใช้งาน session ใน codeigniter

วิธีกำหนดค่าให้ตัวแปรแบบ session

ใน php codeigniter ใช้คำสั่งในการกำหนดค่าให้กับตัวแปรแบบ session ได้ด้วยคำสั่ง set_userdata
กำหนดค่าให้ตัวแปร 1 ตัว

$this->session->set_userdata("member_id",45);

และถ้าเราต้องการกำหนดค่าให้ตัวแปรหลาย ๆ ตัวก็จะได้โค๊ดในลักษณะดังนี้
กำหนดค่าให้ตัวแปรหลาย ๆ ตัวพร้อมกันใช้ array

$userdata = array(
	'member_id'     => 45,
	'name'     => 'my name',
	'position'     => 1,
	'status'     => 1
	);
$this->session->set_userdata($userdata);

วิธีกำลบตัวแปรแบบ session

ลบที่ละตัวแปร

$this->session->unset_userdata('member_id');

หรือแบบนี้

unset($_SESSION['member_id']);

ลบพร้อมกันหลายตัวแปร

$userdata = array('member_id', 'name');
$this->session->unset_userdata($userdata);

หรือแบบนี้ก็ได้

unset(
        $_SESSION['member_id'],
        $_SESSION['name']
);

วิธีนำตัวแปรแบบ session ไปใช้งาน

เมื่อเราทำการโหลด session library เข้ามาใช้งานแล้วเราจะสามารถเรียกใช้งานตัวแปรแบบ session ได้
ทั้งใน Controller และ View ได้ ด้วยโค๊ดประมาณนี้

$member_id = $this->session->userdata("member_id");
echo $member_id;

member_id คือชื่อของตัวแปรที่เรากำหนดค่าให้ก่อนหน้านี้

session เป็นอีกหนึ่งความสามารถของการเขียนโปรแกรมภาษา php ที่มีประโยชน์เป็นอย่างมาก
เราสามารถนำตัวแปรแบบ session ไปประยุกต์ใช้งานได้ในอีกหลาย ๆ รูปแบบ ซึ่งก็ขึ้นอยู่กับงานหรือโปรเจคนั้น
ว่ามีความจำเป็นหรือเหมาะสมที่จะนำตัวแปรแบบ session ไปใช้งานหรือไม่

Exit mobile version