Bạn sẽ sử dụng các biến trong hầu hết mọi chương trình mà bạn viết bằng PHP. Hầu hết thời gian các biến này có giá trị và chúng tôi thường tạo chúng với giá trị ban đầu. Tuy nhiên, luôn có khả năng một số biến bạn đang sử dụng không được khởi tạo. Điều này có thể dẫn đến một cảnh báo từ PHP về việc sử dụng một biến không xác định.
Có thể có nhiều lý do cho các biến không xác định. Những người phổ biến nhất là bạn thực sự không xác định biến hoặc bạn đã phạm sai lầm khi sử dụng lại ở một nơi khác. Đây chỉ là một lỗi lập trình. Tuy nhiên, một khả năng khác có thể dẫn đến một biến không xác định là nó đã được xác định có điều kiện.
Bạn cũng có thể thấy rằng một biến có giá trị NULL
. Điều này cũng có thể xảy ra vì một số lý do. Ví dụ, biến có thể không được khởi tạo với một giá trị. Hoặc giá trị null có thể được trả về từ một hàm để báo hiệu một số loại lỗi.
Trong mọi trường hợp, sử dụng một biến trước khi nó được xác định hoặc khi nó có giá trị null có thể có hậu quả không lường trước được. Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách kiểm tra xem một phần tử đã được xác định và xem nó có trống hay không.
Bạn có thể sử dụng isset[]
, empty[]
hoặc is_null[]
để kiểm tra xem một hoặc tất cả các điều kiện đó là đúng hay sai.
Định nghĩa
Hãy bắt đầu với một số định nghĩa.
-
isset[]
: Bạn có thể sử dụngisset[]
để xác định xem một biến được khai báo và khác với 0. -
empty[]
: Nó được sử dụng để xác định xem biến có tồn tại hay không và giá trị của biến không đánh giá là 2. -
is_null[]
: Hàm này được sử dụng để kiểm tra xem một biến là ____10.
Php isset[]
so với empty[]
Như chúng ta đã thấy từ các định nghĩa, isset[]
sẽ trả về
NULL
. Điều này có thể bao gồm 0, một chuỗi trống hoặc 2. Mặt khác, empty[]
sẽ trả về 8 Bất cứ khi nào giá trị biến được đặt thành một cái gì đó đánh giá thành ____ 12, chúng tôi gọi các giá trị "Falsey" này. Ví dụ về các giá trị sai bao gồm 0, chuỗi trống 6 và chuỗi 7, một mảng trống, NULL
hoặc tất nhiên là boolean 2.Một điểm tương đồng giữa isset[]
và empty[]
là cả hai đều là cấu trúc ngôn ngữ và do đó không thể được gọi bằng cách sử dụng các hàm biến.
Đoạn mã sau đây sẽ giải thích sự khác biệt giữa hai cái này.
Lưu ý rằng empty[]
có thể được viết bằng hàm isset[]
:
Tất nhiên, thường dễ sử dụng chức năng empty[]
tích hợp.
Php isset[]
so với is_null[]
Hàm is_null[]
trả về
NULL
. Nếu không, nó chỉ đơn giản là trả về 2. Mặt khác, isset[]
sẽ trả về 8 miễn là một biến được xác định và giá trị của nó không phải là NULL
.Dưới đây là một ví dụ cơ bản để hiển thị sự khác biệt giữa chúng.
PHP & nbsp; ________ 6 so với is_null[]
& Nbsp; ________ 6 & nbsp; hàm trả về & nbsp; ________ 18 & nbsp; nếu giá trị của một biến đánh giá là
2. Điều này có thể có nghĩa là chuỗi trống,NULL
, số nguyên 0 hoặc một mảng không có phần tử. Mặt khác, ________ 7 & nbsp; sẽ trả về & nbsp; ________ 18 & nbsp; chỉ khi biến có giá trị NULL
.Dưới đây là một ví dụ cơ bản để hiển thị sự khác biệt giữa chúng.
2. Điều này có thể có nghĩa là chuỗi trống,NULL
, số nguyên 0 hoặc một mảng không có phần tử. Mặt khác, ________ 7 & nbsp; sẽ trả về & nbsp; ________ 18 & nbsp; chỉ khi biến có giá trị NULL
.Những điểm quan trọng cần nhớ
Có hai mẹo mà bạn có thể sử dụng để viết mã ngắn gọn hơn và tránh các lỗi trong tương lai.
1. Không giống như empty[]
và is_null[]
, bạn có thể chuyển nhiều giá trị đến isset[]
cùng một lúc để kiểm tra đồng thời xem có ai trong số chúng không được xác định hoặc đặt thành NULL
không. Trong trường hợp đó, isset[]
sẽ chỉ trả về 8 nếu không có giá trị nào được truyền là NULL
.
2. Không sử dụng empty[]
1 để kiểm tra xem giá trị là NULL
. Điều này sẽ cung cấp một dương tính giả cho các giá trị sai như một chuỗi trống đánh giá thành
Bạn có thấy bài đăng này hữu ích?
Freelancer, người hướng dẫn
Tôi là một nhà phát triển đầy đủ, người cũng thích viết các hướng dẫn. Sau khi thử một loạt những điều cho đến năm thứ hai đại học, tôi quyết định làm việc về các kỹ năng phát triển web của mình. Bắt đầu chỉ với HTML và CSS, tôi tiếp tục tiến về phía trước và có được kinh nghiệm trong PHP, JavaScript và Python. Tôi thường dành thời gian rảnh của mình hoặc làm việc cho một số dự án phụ hoặc đi du lịch xung quanh.