Bài viết này hướng dẫn bạn cách kiểm tra các chuỗi không rỗng và rỗng trong PHP. Chúng ta sẽ sử dụng các hàm PHP empty() và is_null() cùng với toán tử phủ định
Kiểm tra Not Null bằng cách sử dụng is_null() trong PHP
Hàm PHP Your variable I am a string is not null. 0 sẽ kiểm tra xem một biến có phải là null hay không. Trong khi đó, bạn có thể nối nó với toán tử phủ định và nó sẽ kiểm tra xem biến có phải là null không
Trong PHP, toán tử phủ định là dấu chấm than (Your variable I am a string is not null. 1). Chúng tôi trình bày một ví dụ bên dưới nơi chúng tôi kiểm tra xem một chuỗi có phải là null không
" . $sample_string . " is not null."; } else { echo "Your variable is null."; } ?>
đầu ra
Your variable I am a string is not null.
Kiểm tra chuỗi rỗng bằng cách sử dụng empty() trong PHP
Hàm PHP empty() cho phép bạn kiểm tra một chuỗi rỗng. Ngoài ra, hàm empty() có thể kiểm tra các giá trị khác mà PHP đánh giá là rỗng
Trong ví dụ sau, chúng tôi sử dụng hàm empty() để kiểm tra một chuỗi trống giữa các giá trị khác
PHP có rất nhiều cách xử lý việc kiểm tra biến. Có những hàm kiểm tra từng loại như is_array, is_object hay is_bool và có những hàm dùng để kiểm tra nhiều điều kiện một lúc. Hôm nay chúng ta sẽ giải quyết sự khác biệt giữa is_null(), empty() và isset(). Trước tiên hãy giải thích những gì mỗi người làm
is_null()
Hàm này chỉ kiểm tra xem một biến có giá trị null hay không, nhưng nó không bao gồm các trường hợp khi biến đó không được xác định hoặc các trường hợp khi một giá trị sẽ đánh giá thành một giá trị trống
Chúng ta hãy xem một vài ví dụ
<?php $myvar = NULL; is_null($myvar); // This is TRUE $myvar = 0; is_null($myvar); // This is FALSE $myvar = FALSE; is_null($myvar); // This is FALSE $myvar = ''; is_null($myvar); // This is FALSE is_null($some_undefined_var); //This is also TRUE .. but the script throws a notice because $some_undefined_var doesn't existXin lưu ý rằng biến null không giống với biến không xác định. Ngay cả khi cả hai đều đánh giá là NULL, PHP sẽ thông báo cho biết. "Lưu ý. biến không xác định. X vào. "
ngay lập tức()
Hàm này kiểm tra xem một biến có được xác định hay không (a. k. a tồn tại) trong tập lệnh của bạn. Tuy nhiên, isset() cũng thấy các biến có giá trị null là không được đặt (nếu bạn hiểu theo nghĩa đen của hàm)
Điều này có thể hơi khó hiểu nhưng một vài ví dụ sẽ cho bạn thấy chính xác điều tôi muốn nói
<?php $myvar = NULL; isset($myvar); // This is FALSE $myvar = 0; isset($myvar); // This is TRUE $myvar = FALSE; isset($myvar); // This is TRUE $myvar = ''; isset($myvar); // This is TRUE isset($some_undefined_var); // This is FALSEtrống rỗng()
Hàm này kiểm tra xem một biến có đánh giá theo cái mà PHP coi là "falsy" hay không (a. k. một giá trị trống). Điều này đang được nói, một biến trống nếu nó không được xác định, null, false, 0 hoặc một chuỗi rỗng
Để hiểu rõ hơn về cách trống hoạt động. bạn nên nghĩ về chức năng này giống như. . isset($var). $var==false
Dưới đây là một số ví dụ
<?php $myvar = NULL; empty($myvar); // This is TRUE $myvar = 0; empty($myvar); // This is TRUE $myvar = FALSE; empty($myvar); // This is TRUE $myvar = ''; empty($myvar); // This is TRUE empty($some_undefined_var); // This is TRUEĐể kết luận, hãy nhớ LUÔN LUÔN kiểm tra biến của bạn. Điều này đặc biệt quan trọng trong PHP, đây không phải là ngôn ngữ lập trình được gõ nghiêm ngặt nên lập trình viên cần đặc biệt chú ý đến nó.
PHP có nhiều chức năng để kiểm tra các biến PHP đối với các giá trị khởi tạo của chúng. Các hàm này là isset, empty và is_null
- isset() là để kiểm tra xem một biến có được đặt với một giá trị hay không và giá trị đó không được rỗng
- trống () là để kiểm tra xem một biến đã cho có trống không. Sự khác biệt với isset() là, isset có null check
- is_null() là để kiểm tra xem một biến có được định nghĩa là null hay không
Tôi cảm thấy cách hiệu quả để truyền đạt sự khác biệt là sử dụng BẢNG SỰ THẬT,
“”“quả táo”NULLFALSE0undefinedTRUEarray()123issetTRUETRUEFALSETRUETRUEFALSETRUETRUETRUEemptyTRUEFALSETRUETRUETRUETRUETRUEFALSETRUEFALSEis_nullFALSEFALSETRUEFALSEFALSECảnh báo / TRUEFALSEFALSEFALSEVâng. Bây giờ hãy tìm sự khác biệt
Mã để hiểu sự khác biệt
Sự khác biệt. php
ISSET:"; $var = ""; print 'isset(""): ' . isset($var) . "
"; $var = 'apple'; print "isset('apple'): " . isset($var) . "
"; $var = null; print "isset(null): " . isset($var) . "
"; $var = FALSE; print "isset(FALSE): " . isset($var) . "
"; $var = 0; print "isset(0): " . isset($var) . "
"; print "isset(undefined): " . isset($var3) . "
"; $var = TRUE; print "isset(TRUE): " . isset($var) . "
"; $var = array(); print "isset(array()): " . isset($var) . "
"; $var = 123; print "isset(123): " . isset($var) . "
"; print "
EMPTY:
"; $var = ""; print 'empty(""): ' . empty($var) . "
"; $var = 'apple'; print "empty('apple'): " . empty($var) . "
"; $var = null; print "empty(null): " . empty($var) . "
"; $var = FALSE; print "empty(FALSE): " . empty($var) . "
"; $var = 0; print "empty(0): " . empty($var) . "
"; print "empty(undefined): " . empty($var1) . "
"; $var = TRUE; print "empty(TRUE): " . empty($var) . "
"; $var = array(); print "empty(array()): " . empty($var) . "
"; $var = 123; print "empty(123): " . empty($var) . "
"; print "
IS_NULL:
"; $var = ""; print 'is_null(""): ' . is_null($var) . "
"; $var = 'apple'; print "is_null('apple'): " . is_null($var) . "
"; $var = null; print "is_null(null): " . is_null($var) . "
"; $var = FALSE; print "is_null(FALSE): " . is_null($var) . "
"; $var = 0; print "is_null('0'): " . is_null($var) . "
"; print "is_null(undefined):" . is_null($var2) . "
"; $var = TRUE; print "is_null(TRUE): " . is_null($var) . "
"; $var = array(); print "is_null(array()): " . is_null($var) . "
"; $var = 123; print "is_null(123): " . is_null($var) . "
"; ?>
đầu ra
ISSET: isset(""): 1 isset('apple'): 1 isset(null): isset(FALSE): 1 isset(0): 1 isset(undefined): isset(TRUE): 1 isset(array()): 1 isset(123): 1 EMPTY: empty(""): 1 empty('apple'): empty(null): 1 empty(FALSE): 1 empty(0): 1 empty(undefined): 1 empty(TRUE): empty(array()): 1 empty(123): IS_NULL: is_null(""): is_null('apple'): is_null(null): 1 is_null(FALSE): is_null('0'): Notice: Undefined variable: var2 in .../index.php on line 51 is_null(undefined):1 is_null(TRUE): is_null(array()): is_null(123):sự khác biệt
ngay lập tức
Trả về true cho chuỗi rỗng, False, 0 hoặc một biến không xác định. Trả về false cho null
trống rỗng
Trả về true cho null, chuỗi trống, Sai, 0 hoặc một biến không xác định. Trả về true nếu có bất kỳ giá trị nào
is_null
Chỉ trả về true cho null. Trả về false trong tất cả các trường hợp khác. Ném cảnh báo nếu biến không được xác định. Nếu bạn chặn cảnh báo, bạn sẽ nhận được sự thật