Làm cách nào để kiểm tra xem một biến có được đặt trong PHP không?

Bài viết này hướng dẫn bạn cách sử dụng hàm PHP isset[] để kiểm tra xem một biến có tồn tại và được điền hay không

Vì vậy, nó đang kiểm tra xem một biến có được đặt hay không

Tại sao bạn muốn làm điều này?

Bạn không thể thực hiện hành động trên một biến không tồn tại hoặc không có giá trị – bạn sẽ nhận được kết quả không mong muốn hoặc lỗi

Vì vậy, có thể kiểm tra xem một biến đã được đặt và được điền hay chưa là khá hữu ích

Cú pháp cho isset[]

isset [ $var1 , $var2...] 

Lưu ý rằng

  • $var1 phải là một biến thuộc bất kỳ loại nào
    • Nó cũng có thể là một phần tử mảng hoặc thuộc tính đối tượng nếu bạn muốn kiểm tra xem một giá trị có được đặt trong một biến hiện có hay không – xem các ví dụ bên dưới
    • Việc chuyển trực tiếp một giá trị tới isset[] sẽ dẫn đến lỗi – đó phải là một biến
  • Bạn có thể cung cấp nhiều biến hơn, cách nhau bằng dấu phẩy
  • Ít nhất một biến phải được chuyển đến isset[]
  • isset[] trả về giá trị boolean
    • FALSE nếu nó không được đặt hoặc có giá trị NULL
    • TRUE nếu biến được đặt

Ví dụ sử dụng isset[]

Dưới đây là một số ví dụ đơn giản về cách sử dụng hàm isset[] 

$var = 1;
$var2 = NULL;

if [isset[$var] == TRUE] {
    # The variable $var is set and is not NULL, so isset[] returned TRUE
}

if [isset[$var2] == FALSE] {
    # The variable $var2 is set but has a NULL value, so isset[] returned FALSE
}

if [isset[$var3] == FALSE] {
    # The variable $var3 is not set, so isset[] returned FALSE
}

Ví dụ – Kiểm tra xem một phần tử có tồn tại trong một mảng không

isset[] cũng có thể được sử dụng để kiểm tra xem một giá trị có được đặt cho một khóa mảng hoặc vị trí trong một mảng hay không. Nó cũng có thể kiểm tra các giá trị mảng sâu hơn cho các mảng đa chiều

$fruit_colours = array['oranges' => 'orange', 'lemons' => NULL, 'apples' => array['granny_smith' => 'green', 'macintosh' => 'red']];

var_dump[isset[$fruit_colours['oranges']]]; // TRUE as the array key 'oranges' exists in the $fruit_colours array and is not NULL
var_dump[isset[$fruit_colours['limes']]]; // FALSE as the array key 'limes' does not exist inf the $fruit_colours array
var_dump[isset[$fruit_colours['hello']]]; // FALSE as though the  array key 'lemons' is set, it has a value of NULL

var_dump[isset[$fruit_colours['apples']['macintosh']]]; // TRUE as $fruit_colours contains a value at the array key 'apples', and the array stored at 'apples' has an array key with value 'macintosh' which is not NULL
var_dump[isset[$fruit_colours['apples']['gala']]]; // FALSE as though $fruit_colours contains a value at the array key 'apples', the array stored at 'apples' doesn't contain a value at array key 'gala'

Tôi đang sử dụng hàm var_dump[] của PHP để in ra thông tin về giá trị trả về từ isset[] – tìm hiểu thêm tại đây

Ví dụ – Kiểm tra xem một Đối tượng có Thuộc tính/Thuộc tính hay không

Giống như isset[] có thể được sử dụng để kiểm tra xem một khóa mảng có được đặt hay không, nó có thể được sử dụng để kiểm tra xem một thuộc tính đối tượng có được đặt hay không

$car = [object] array['make' => 'ford', 'model' => 'fairlane', 'details' => array['colour' => 'blue', 'year' => NULL]];

var_dump[isset[$car->make]]; // TRUE as the $car object has a 'make' property which is not NULL
var_dump[isset[$car->wheels]]; // FALSE as the $car object does not have a 'wheels' property

var-dump[isset[$car->details->colour]]; // TRUE as the $car object has a 'details' property with a 'colour' subproperty, which has a value which is not NULL
var-dump[isset[$car->details->year]]; // FAlSE as while the $car object has a 'details' property, the 'year' subproperty is NULL

Trong hai ví dụ sau, bạn có thể thấy rằng bạn có thể kiểm tra các thuộc tính phụ của một đối tượng mà không cần kiểm tra các thuộc tính gốc – nếu bất kỳ thuộc tính gốc nào bị thiếu ở bất kỳ độ sâu nào, isset[] sẽ trả về SAI

Isset trong PHP là một hàm PHP sẵn có thiết yếu giúp chương trình PHP của bạn dễ hiểu hơn. Tuy nhiên, ngay cả hướng dẫn sử dụng PHP cũng chưa giải thích sâu hàm isset. Trong bài viết này, bạn sẽ tìm hiểu sâu về hàm isset, cũng như các khía cạnh khác nhau của nó.

Khi bạn viết một đoạn mã nhỏ, bạn có thể theo dõi xem bạn đã sử dụng bao nhiêu biến hoặc tên của biến bạn đã sử dụng trong mã của mình. Nhưng bất cứ khi nào bạn đang xử lý một chương trình lớn có chứa nhiều biến cùng với nhiều mảng hoặc khóa mảng, thì có khả năng cao là bạn sẽ mất dấu những tên biến hoặc tên mảng nào đã được sử dụng và những tên nào chưa được sử dụng trong mã của bạn. Trong những trường hợp như vậy, chức năng isset đi vào hình ảnh

Chương trình sau đại học. Phát triển web đầy đủ ngăn xếp

hợp tác với Caltech CTME Đăng ký ngay

isset[] trong PHP là gì?

Hàm isset trong PHP được sử dụng để xác định xem một biến có được đặt hay không. Một biến được coi là biến set nếu nó có giá trị khác NULL. Nói cách khác, bạn cũng có thể nói rằng hàm isset được sử dụng để xác định xem bạn đã sử dụng một biến trong mã của mình hay chưa. Nó là một hàm kiểu boolean. Điều đó có nghĩa là nếu một biến, mảng hoặc khóa mảng không được đặt hoặc nó có giá trị NULL, giá trị hiện tại trong PHP sẽ trả về false, nếu không, bạn sẽ nhận được true làm giá trị trả về. Bạn có thể truyền nhiều đối số trong hàm isset và nó sẽ kiểm tra tất cả các tham số đã truyền cho dù chúng có được đặt hay không. Trong trường hợp này, hàm isset sẽ chỉ trả về true nếu tất cả các đối số đã truyền được đặt. Nếu bất kỳ đối số nào có giá trị NULL, hàm isset sẽ trả về false.  

isset[] Cú pháp, tham số và giá trị trả về

Cú pháp của isset trong PHP.  

//cú pháp kiểm tra xem

// các biến truyền vào được khai báo

// và không bằng null hay không,

// sử dụng hàm isset trong PHP

ngay lập tức [ hỗn hợp $var1 , hỗn hợp $var2 ,. $vars ]

Các tham số được sử dụng trong cú pháp

Các tham số truyền vào là các biến hỗn hợp. Điều này đơn giản có nghĩa là bạn có thể chuyển một hoặc nhiều biến thuộc các kiểu dữ liệu khác nhau để đặt trong PHP dưới dạng tham số

Giá trị trả về

isset[] trả về một giá trị boolean. Nó sẽ trả về true nếu tham số được truyền vào được khai báo và không được đặt NULL. Trong trường hợp, khi hơn một tham số được truyền [chúng có thể thuộc các kiểu dữ liệu khác nhau], isset[] sẽ chỉ trả về true nếu tất cả các biến được truyền không bằng NULL và giá trị của chúng tồn tại.  

Nó sẽ trả về false khi một biến chưa được khai báo hoặc bằng NULL. Nếu có nhiều hơn một tham số được truyền và nếu bất kỳ tham số nào không được đặt, thì kết quả trả về sẽ là sai, bất kể trạng thái đặt/không đặt của các biến khác.  

Chương trình sau minh họa isset trong PHP

Khóa học Full Stack Web Developer

Để trở thành chuyên gia về MEAN Stack Xem khóa học

Hàm khởi tạo PHP []

Thí dụ. Kiểm tra xem một biến có trống không và liệu biến đó có được thiết lập/khai báo hay không

Chủ Đề