Bài 04: [Module User] - Thư viện Session

DOWNLOAD

Session đóng vai trò khá quan trọng trong một website bởi hầu hết website nào cũng phải sử dụng nó, thường dùng nhất là trong hệ thống quản lý admin. Chúng ta sẽ sử dụng Session để lưu trữ trạng thái đăng nhập và cấp độ của người dùng để từ đó có thể cung cấp các quyền hợp lý.

Khi sử dụng Session chúng ta sẽ thực hiện các thao tác get, set và delete. Đây là ba thao tác hay sử dụng nhất nên chúng ta sẽ viết nó thành một thư viện để tiện sử dụng.

1. Viết thư viện Session

Các bạn mở file libs/session.php lên và nhập nội dung sau:

// Gán session (SET)
function session_set($key, $val){
    $_SESSION[$key] = $val;
}

// Lấy session (GET)
function session_get($key){
    return (isset($_SESSION[$key])) ? $_SESSION[$key] : false;
}

// Xóa session (DELETE)
function session_delete($key){
    if (isset($_SESSION[$key])){
        unset($_SESSION[$key]);
    }
}

Mình sẽ giải thích từng hàm như sau:

Hàm gán session:

function session_set($key, $val){
    $_SESSION[$key] = $val;
}

Hàm này là phép gán nên ta gán bình thường, không có gì phức tạp cả.

Hàm lấy session:

function session_get($key){
    return (isset($_SESSION[$key])) ? $_SESSION[$key] : false;
}

Trước khi lấy một key nào đó trong Session thì ta phải kiểm tra key đó có tồn tại hay không, nếu có thì mới lấy và ngược lại thì trả về giá trị FALSE.

Toán tử mà ta dùng trong trường hợp này gọi là toán tử ba ngôi. Nếu viết bình thường thì nó sẽ như sau:

function session_get($key){
    if (isset($_SESSION[$key])){
        return $_SESSION[$key];
    }
    return false;
}

Xóa session:

function session_delete($key){
    if (isset($_SESSION[$key])){
        unset($_SESSION[$key]);
    }
}

Trước khi xóa thì chúng ta kiểm tra nó có tồn tại hay không? Chúng ta sử dụng hàm unset để xóa.

2. Lời kết

Như vậy là ta đã viết xong thư viện xử lý database bằng PHP, bài tiếp theo chúng ta sẽ tìm hiểu cách viết thư viện xử lý vấn đề phân quyền và đăng nhập.

Hãy để lại link bài viết gốc khi chia sẻ bài viết này, mình sẽ report DMCA với những website lấy nội dung mà không để nguồn hoặc copy bài với số lượng lớn.

Nguồn: freetuts.net

Profile photo of adminTheHalfHeart

TheHalfHeart

Có sở thích viết tuts nên đã từng tham gia viết ở một số diễn đàn, đến năm 2014 mới có điều kiện sáng lập ra freetuts.net. Sinh năm 90 và có 1 vợ 2 con, thích ca hát và lập trình.

ĐĂNG BÌNH LUẬN: Đăng câu hỏi trên Facebook để được hỗ trợ nhanh nhất.