Bài 26: Hàm Isset Trong Php Là Gì, Hàm Isset() Trong Php

Hàm isset() trong PHP mình cũng từng sử dụng hơi nhiều lần trong series nàyrồi nhưng vẫn có một số bạn mail hỏi sự khác nhau giữa hàm isset() & hàmempty() trong PHP như vậy nào?, bao giờ thì sử dụng hàmisset() & bao giờ thì sử dụng hàmempty()? Nên trong bài này mình sẽ giới thiệu hai hàm này & chỉ dẫn cách dùng nó, cũng như là sự khác nhau của nó.Bạn đang xem: Isset trong php là gì

1. Hàm isset trong PHP

Hàm isset() được dùng để kiểm soát một biến nào đó đã được khởi tạo trong bộ nhớ lưu trữ của dòng sản phẩm tính hay chưa, nếu nó đã khởi tạo (tồn tại) thì sẽ trả về TRUE & trái lại sẽ trả về FALSE.

Bạn đang xem: Isset trong php là gì

Chẳng hạn: Kiểm soát biến $tên miền có tồn tại hay không

: Kiểm soát biến $tên miền có tồn tại hay không

if (isset($tên miền)){ echo “Biến domain đã tồn tại”;}else{ echo “Biến domain chưa tồn tại”;}

Bài viết được đăng tại honamphoto.com

Vậy bao giờ thì sử dụng hàm isset()?

Như bạn biết nếu trong tiến trình biên dịch nếu trong code có sử dụng một biến không tồn tại thì trình biên dịch sẽ ngưng giải quyết & nhắc nhở lỗi ngay, chính vì như thế thông thường những trường hợp mà ta không chắc rằng là biến đó luôn tồn tại thì trước khi sử dụng hãy kiểm soát nó.

Chẳng hạn: Lấy thông tin đăng ký từ form

: Lấy thông tin đăng ký từ form

Đây là chẳng hạn phổ biến nhất mà có vẻ nhiều ban newbie vẫn mắc phải. Thông thường khi lấy thông tin từ FORM (xem bài bài viết & get trong php) thì chúng ta nên kiểm soát nó có tồn tại không rồi hãy lấy, nếu như không người dùng sẽ sử dụng firebug đổi một số name của các thẻ input thì chương trình sẽ lỗi ngay.

Xem Thêm  8. Câu lệnh ghép - Tài liệu Python 3.10.5 - thử trong vòng thử python

if (isset($_POST)){ $fullname = isset($_POST) ? $_POST : “”; $address = isset($_POST) ? $_POST : “”; $thư điện tử = isset($_POST) ? $_POST : “”; $phone = isset($_POST) ? $_POST : “”;}Chẳng hạn: Lấy trang hiện giờ trên URL dùng để phân trangTrong thuật toán phân trangchúng ta lấy page trên URL để xác nhận record hiển thị cho trang đó. Cũng chính vì page nằm trên URL nên rất bất trắc nếu như tất cả chúng ta lấy mà không kiểm soát nó tồn tại hay không vì nếu người dùng chỉ cần bỏ cái page=Ҳ đó đi thì chương trình sẽ bị lỗi ngay.

$current_page = isset($_GET) ? $_GET : “1”;Chẳng hạn: Thực hiện nối chuỗi trong lúc biến $tên miền chưa chắc rằng là tồn tại// Mệnh đề if này không được thực hiện// => biến $sologan ko tồn tại$trang web = “honamphoto.com”;if ($trang web != “honamphoto.com”){ $sologan = “Đây không phải là website honamphoto.com”;} // Nên đoạn code này sai$sologan .= ” vui lòng ghi rõ nguồn khi public nội dung này ở website khác”;

Rõ ràng và cụ thể đoạn code này chạy sẽ bị lỗi ngay bởi vì biến $sologan sẽ không tồn tại vì câu lệnh bên trong mệnh đềif không được chạy.

Trên là những chẳng hạn thông thường hay xảy ra trong thực tiễn nên vẫn còn tương đối nhiều trường hợp chúng ta nên sử dụng hàm isset() trong php.

2. Hàm empty() trong PHP

Giả sử ta có biến $var & giá trị của nó sẽ là rỗngnếu nó nằm mộttrong các trường hợp sau:

Xem Thêm  Mảng trong C ++ - cách tạo một mảng c ++

$var = 0 hoặc$var = “0”$var = NULL$var = “”;$var = FALSE$var không tồn tại

$var = 0 hoặc$var = “0”$var = NULL$var = “”;$var = FALSE$var không tồn tại

Như thế có 6 trường hợp hàm empty() sẽ đúng. Bên cạnh đó trường hợp cuối cùng là $var không tồn tại là hơi đặc biệt một tí, vấn đề này rất giống với hàm isset() đúng không nào.

Đọc thêm: Kính Cường Lực Tiếng Anh Là Gì, Thể Lực Trong Tiếng Anh Là Gì

Chẳng hạn: Chẳng hạn các trường hợp trên

: Chẳng hạn các trường hợp trên

$var = “0”;var_dump(empty($var));$var = 0;var_dump(empty($var));$var = “”;var_dump(empty($var));$var = FALSE;var_dump(empty($var));$var = NULL;var_dump(empty($var));var_dump(empty($bien_khong_ton_tai));

Trong đó ở chẳng hạn thứ 6 biến $bien_khong_ton_tai chưa được khởi tạo nhưng vẫn không bị lỗi & khi sử dụng nó trong hàm empty() thì sẽ trả về TRUE.

Vậy bao giờ nên sử dụng hàm empty()?

Thông thường tất cả chúng ta sử dụng hàm empty() để validate dữ liệu bởi vì nó có thêmchức năng của hàm isset() nên sẽ không khi nào hiện ra lỗi.

Vi dụ: kiểm soát dữ liệu khi người dùng đăng nhập

: kiểm soát dữ liệu khi người dùng đăng nhập

if (empty($_POST)){ echo “Bạn chưa nhập tên đăng nhập”;}

Nếu sử dụng hàm isset() thì ta sẽ làm nhưsau:

$web11_username = isset($_POST) ? $_POST : “”;$password = isset($_POST) ? $_POST : “”;if ($web11_username == “”) { echo “Bạn chưa nhập tên đăng nhập”;}if ($password == “”) { echo “Bạn chưa nhập mật khẩu”;}

Rõ ràng và cụ thể nếu ta dùng hàm empty() thì nhìn code gọn hơn phải không nào.

3. Lời kết

Trong bài này mình đã giới thiệu hai hàm thường dùng để validate dữ liệu này là hàm isset() & hàm empty() trong php, mỗi hàm mình có liệt kê cách dùng nên từ đó bạn có thể suy ra bao giờ nên sử dụng isset() & bao giờ nên sử dụng empty().

Xem Thêm  Sử dụng mảng đối tượng JSON trong JavaScript - ví dụ về mảng đối tượng json

& có 1 điểm mình mong muốn nhấn mạnh khi sử dụng hàm empty() này là hàm này sẽ trả về TRUE nếu biến kiểm soát không tồn tại, điều này rất giống với hàm isset() nên ta có thể nói hàm empty() có luôn tính năng của hàm isset().

Phản hồi đã đóng, nếu có khúc mắc hãy đặt thắc mắc tại hoicode.com để admin giải đáp.

Bài sau Bài tiếp

DANH SÁCH BÀI HỌC

Lý thuyết Giải quyết Form Bài tập Danh mục đề tài MÃ GIẢM GIÁ Unica 50% Lấy Mã TinoHost 30% Lấy Mã INET 30% Lấy Mã

Liên hệ

Coupon

Khóa học

Giới thiệu

Bài sau Bài tiếpLý thuyết Giải quyết Form Bài tập Danh mục đề tài

Admin Cường, làm chủ chính của trang web.

2020 – honamphoto.com. All Right Reserved Theme GoodNews, nền móng Codeigniter, VPS mua tại Tinohost

2020 – honamphoto.com. All Right Reserved Theme, nền móng, VPS mua tại Tinohost

BÀI VIẾT

Nếu bạn phát hiện lỗi sai backlink, bài viết sai, hay một lỗi bất kể nào đó trên trang này thì hãy cho mình biết nhé. Cám ơn bạn!

Viết một bình luận