Hướng dẫn what are the 4 conditional statements in php? - 4 câu điều kiện trong php là gì?

Tác giả đã chọn mở nguồn cung cấp bệnh tâm thần Ltd để nhận quyên góp như là một phần của chương trình Viết cho quyên góp.

Giới thiệu

Quyết định là một phần không thể thiếu của cuộc sống. Từ những quyết định trần tục về những gì nên mặc, đến các quyết định thay đổi cuộc sống của công việc và gia đình. Vì vậy, quá phát triển. Để một chương trình làm bất cứ điều gì hữu ích, nó phải có thể đáp ứng với một số loại đầu vào. Khi một người nhấp vào nút liên hệ trên trang web, họ dự kiến ​​sẽ được đưa đến một trang liên hệ. Nếu không có gì xảy ra, hoặc chúng được đưa đến trang sai, người dùng có thể chọn ngừng sử dụng trang web hoặc công ty đó hoàn toàn.

Các quyết định được viết trong mã được hình thành bằng cách sử dụng các điều kiện: Từ Nếu x, thì y. Ngay cả một nút nhấp chuột cũng là một hình thức của điều kiện: Nếu nút này được nhấp, hãy đến một trang nhất định. Các tuyên bố có điều kiện là một phần của logic, ra quyết định hoặc kiểm soát luồng của chương trình máy tính. Bạn có thể so sánh một tuyên bố có điều kiện với một cuốn sách chọn phiêu lưu của riêng bạn, hoặc một sơ đồ.

Hãy cùng xem xét một số ví dụ mà chúng ta sẽ sử dụng các câu lệnh có điều kiện:

  • Nếu học sinh nhận được hơn 65% trong bài kiểm tra của mình, báo cáo rằng lớp của cô vượt qua; Nếu không, báo cáo rằng lớp của cô thất bại.
  • Nếu có tiền trong một tài khoản, hãy tính lãi; Nếu nó được khai thác, tính phí phạt.
  • Nếu họ mua 10 quả cam trở lên, hãy tính chiết khấu 5%; Nếu họ mua ít hơn, thì don don.
  • Kiểm tra vị trí của người dùng và hiển thị ngôn ngữ chính xác dựa trên quốc gia.
  • Gửi một biểu mẫu khi gửi hoặc hiển thị cảnh báo bên cạnh các trường cần thiết bị thiếu.
  • Mở một thả xuống trên một sự kiện nhấp chuột hoặc đóng một thả xuống nếu nó đã mở.
  • Hiển thị mẫu đặt phòng cho một khách sạn, nhưng không phải nếu khách sạn được đặt trước.

Khi đánh giá các điều kiện và gán mã để chạy dựa trên việc các điều kiện đó có được đáp ứng hay không, chúng tôi đang viết mã có điều kiện.

Hướng dẫn này sẽ bắt đầu với một cái nhìn tổng quan về các toán tử so sánh sẽ được sử dụng để xây dựng các tuyên bố có điều kiện. Tiếp theo, bạn sẽ đưa bạn thông qua các câu lệnh có điều kiện trong PHP, bao gồm các từ khóa

if ($inventory > 0) echo "Add to Cart";
2,
if ($inventory > 0) echo "Add to Cart";
3 và
if ($inventory > 0) echo "Add to Cart";
4. Điều này cũng bao gồm kết hợp các điều kiện bằng cách sử dụng các toán tử logic của
if ($inventory > 0) echo "Add to Cart";
5 hoặc
if ($inventory > 0) echo "Add to Cart";
6. Cuối cùng, nó cũng sẽ bao gồm một số nhà khai thác có điều kiện đặc biệt để mô tả chính xác hơn một tình huống.

Tổng quan về các toán tử so sánh

Một tuyên bố có điều kiện đánh giá liệu một điều kiện là đúng hay sai. Đây thường là kết quả của việc so sánh hai giá trị. Các toán tử so sánh được sử dụng, như tên của chúng ngụ ý, để so sánh hai giá trị. PHP là một ngôn ngữ được gõ lỏng lẻo, có nghĩa là, theo mặc định, PHP sẽ cố gắng thay đổi một loại dữ liệu để phù hợp với kết quả dự kiến ​​khi có thể. Điều này được gọi là loại tung hứng, và trở nên rất quan trọng khi sử dụng các toán tử so sánh. Ví dụ, tất cả các giá trị sau đây sẽ được coi là bằng nhau mặc dù chúng thuộc các loại khác nhau:

false
0
0.0
''

PHP cung cấp một số toán tử so sánh để thể hiện sự so sánh mong muốn của cả giá trị và loại/giá trị kết hợp:

  • Bằng

    if ($inventory > 0) echo "Add to Cart";
    
    7 về giá trị, sau khi loại tung, có nghĩa là tất cả các giá trị trong khối mã trước đó là bằng nhau.
    if ($inventory > 0) echo "Add to Cart";
    
    7 in value, after type juggling, meaning all of the values in the previous code block are equal.

  • Giống hệt

    if ($inventory > 0) echo "Add to Cart";
    
    8 trong cả loại và giá trị, có nghĩa là không có giá trị nào trước đây là giống hệt nhau, bởi vì chúng là tất cả các loại khác nhau.
    if ($inventory > 0) echo "Add to Cart";
    
    8 in both type and value, meaning none of the previous values are identical, because they are all of different types.

  • Không bằng

    if ($inventory > 0) echo "Add to Cart";
    
    9 hoặc
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    0 về giá trị, sau khi loại tung hứng. Như đối diện của bằng nhau, so sánh
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    1 sẽ đánh giá là
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    2 vì các giá trị khớp.
    if ($inventory > 0) echo "Add to Cart";
    
    9 or
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    0 in value, after type juggling. As the opposite of equal, comparing
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    1 would evaluate as
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    2 because the values match.

  • Không giống hệt nhau

    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    3 trong cả loại và giá trị. So sánh
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    4 sẽ đánh giá với
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5 vì mặc dù các giá trị đánh giá giống nhau, loại là khác nhau.
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    3 in both type and value. Comparing
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    4 would evaluate to
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5 because although the values evaluate the same, the type is different.

LƯU Ý: Đặc biệt chú ý đến dấu chấm than

if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
6, có chức năng phủ nhận các điều kiện khác. Pay special attention to the exclamation point
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
6, which functions to negate other conditions.

Bên cạnh bằng nhau và giống hệt nhau, PHP cũng cung cấp các toán tử so sánh để thể hiện cách các giá trị liên quan đến nhau.

  • Ít hơn

    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    7 được sử dụng để cho thấy
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    8 là đúng.
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    7 is used to show that
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    8 is true.

  • Lớn hơn

    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    9 được sử dụng để chỉ ra rằng
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    0 là đúng.
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    9 is used to show that
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    0 is true.

  • Ít hơn hoặc bằng

    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    1 được sử dụng vì vậy cho thấy cả
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    2 và
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    3 đều đúng.
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    1 is used so show that both
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    2 and
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    3 are true.

  • Lớn hơn hoặc bằng

    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    4 được sử dụng để cho thấy rằng cả
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    5 và
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    6 đều đúng.
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    4 is used to show that both
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    5 and
    $discount = 0;
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    }
    
    6 are true.

Bây giờ chúng ta biết các toán tử so sánh là gì, chúng ta có thể xem xét cách sử dụng chúng để viết các câu lệnh có điều kiện.

Viết tuyên bố có điều kiện

Các toán tử so sánh được sử dụng kết hợp với các từ khóa

if ($inventory > 0) echo "Add to Cart";
2,
if ($inventory > 0) echo "Add to Cart";
3 và
if ($inventory > 0) echo "Add to Cart";
4 để xây dựng các câu lệnh có điều kiện kiểm soát luồng của một chương trình.

Sử dụng các câu lệnh if ($inventory > 0) echo "Add to Cart"; 2

Khi chúng tôi chỉ muốn thực thi một đoạn mã cụ thể khi đáp ứng điều kiện, chúng tôi sử dụng câu lệnh

if ($inventory > 0) echo "Add to Cart";
2 có điều kiện, sau đó là điều kiện trong ngoặc đơn
$discount = 0;
if (count($cart) >= 5) {
    $discount = $subtotal * .15
}
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
}
2, theo sau là mã để thực thi trong niềng răng xoăn
$discount = 0;
if (count($cart) >= 5) {
    $discount = $subtotal * .15
}
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
}
3. Mã trong câu lệnh có điều kiện sẽ chỉ được thực thi nếu điều kiện đánh giá là
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5. Khi điều kiện không phải là
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5, mã trong câu lệnh có điều kiện bị bỏ qua và xử lý tiếp tục sau khi đóng câu lệnh có điều kiện. Hãy để xem cách mà nó sẽ trông như thế nào trong mã:

if ($inventory > 0) {
    echo "Add to Cart";
}

Chuỗi Chuỗi Thêm vào giỏ hàng sẽ chỉ được hiển thị khi biến

$discount = 0;
if (count($cart) >= 5) {
    $discount = $subtotal * .15
}
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
}
6 chứa một số lớn hơn
$discount = 0;
if (count($cart) >= 5) {
    $discount = $subtotal * .15
}
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
}
7.

Thay phiên, nếu chỉ có một biểu thức duy nhất sau điều kiện, PHP cho phép chúng ta rời khỏi niềng răng xoăn hoàn toàn. PHP sẽ thực hiện biểu thức đầu tiên sau một điều kiện, kết thúc bằng dấu chấm phẩy. Điều này bao gồm bất kỳ khoảng trắng giữa chúng. Sau đây đánh giá cùng một cách như ví dụ trước:

if ($inventory > 0) echo "Add to Cart";

Sử dụng khối if ($inventory > 0) echo "Add to Cart"; 3

Khi chúng tôi muốn thực thi một đoạn mã cụ thể hoặc một đoạn khác, chúng tôi sẽ thêm một khối

if ($inventory > 0) echo "Add to Cart";
3 vào câu lệnh
if ($inventory > 0) echo "Add to Cart";
2 có điều kiện. Mã trong khối
if ($inventory > 0) echo "Add to Cart";
2 sẽ chỉ được thực thi nếu câu lệnh đánh giá là
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5, trong khi mã trong
if ($inventory > 0) echo "Add to Cart";
3 bock sẽ chỉ được thực thi khi câu lệnh không phải là
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5. Hãy cùng xem một ví dụ trong đó người mua hàng được giảm giá nếu họ mua 10 mặt hàng trở lên:

if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}

Khi số lượng vật phẩm trong giỏ hàng lớn hơn hoặc bằng 10, câu lệnh đánh giá là

if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5 và giảm 30% được tính toán, dựa trên
$discount = 0;
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} elseif (count($cart) >= 5) {
    $discount = $subtotal * .15
}
6. Khi số lượng vật phẩm trong giỏ hàng nhỏ hơn 10, câu lệnh đánh giá là
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
2 và khối
if ($inventory > 0) echo "Add to Cart";
3 được thực thi, không giảm giá. Việc so sánh cũng có thể được viết là
$discount = 0;
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} elseif (count($cart) >= 5) {
    $discount = $subtotal * .15
}
9.

Lưu ý: Bạn không thể sử dụng phần trăm dấu

$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
0 khi tính phần trăm, vì
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
0 được sử dụng để tính toán modulo, phần còn lại của
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
2 chia cho
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
3:
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
4. Thay vào đó, để tính một phần trăm, chuyển đổi tỷ lệ phần trăm thành số thập phân bằng cách chia nó cho 100. Vì vậy,
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
5 là
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
6, hoặc
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
7 hoặc
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
8. Để biết thêm, hãy xem cách làm việc với các số trong PHP.
You cannot use the percent sign
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
0 when calculating the percent, because
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
0 is used to calculate the modulo, which is the remainder of
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
2 divided by
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
3:
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
4. Instead, to calculate a percent, convert the percentage to a decimal by dividing it by 100. So
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
5 is
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
6, or
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
7, or
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
8. For more, check out How to Work with Numbers in PHP.

Thêm một khối

if ($inventory > 0) echo "Add to Cart";
3 đôi khi có thể làm cho mã khó hiểu hơn. Nó có giá trị xem xét liệu chúng ta có thể hoàn thành điều tương tự mà không cần khối
if ($inventory > 0) echo "Add to Cart";
3 hay không. Ví dụ, điều kiện trước đó cũng có thể được viết như sau:

$discount = 0;
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
}

Chúng tôi đặt giá trị mặc định là

$discount = 0;
if (count($cart) >= 5) {
    $discount = $subtotal * .15
}
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
}
7 để giảm giá và chỉ thay đổi nó khi điều kiện được đáp ứng.

Viết một tuyên bố if ($inventory > 0) echo "Add to Cart"; 4

Khi cần điều kiện thứ hai, bạn có thể thêm câu lệnh điều kiện thứ hai:

$discount = 0;
if (count($cart) >= 5) {
    $discount = $subtotal * .15
}
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
}

Khi thêm một câu lệnh thứ hai theo cách này, PHP phải kiểm tra từng câu lệnh, ngay cả khi câu lệnh đầu tiên đã được khớp. Nếu có 14 mục trong giỏ hàng, tuyên bố có điều kiện đầu tiên sẽ đánh giá thành

if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5, bởi vì 14 lớn hơn hoặc bằng 5, sẽ giảm chiết khấu lên 15%. Sau đó, câu lệnh có điều kiện thứ hai cũng sẽ đánh giá thành
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5, bởi vì 14 cũng lớn hơn hoặc bằng 10, một lần nữa đặt giảm giá ghi đè giá trị lên 30%.

Điều này cũng có thể sẽ trả lại giảm giá sai nếu các điều kiện không đúng thứ tự. Khi có khả năng phù hợp với nhiều điều kiện, bạn nên kiểm tra kỹ xem bạn đang đánh giá các điều kiện đó theo đúng thứ tự.

Mã có thể được làm rõ và đánh giá sạch hơn bằng cách sử dụng khối

if ($inventory > 0) echo "Add to Cart";
4:

$discount = 0;
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} elseif (count($cart) >= 5) {
    $discount = $subtotal * .15
}

Trong trường hợp này, mã trước tiên kiểm tra giá trị lớn hơn hoặc đủ đến 10. Nếu câu lệnh đầu tiên này đánh giá là

if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5, mã trong khối có điều kiện đầu tiên được thực thi và các câu lệnh có điều kiện khác không bao giờ được đánh giá. Chỉ khi điều kiện đầu tiên không được đáp ứng là điều kiện tiếp theo được đánh giá.

Một tuyên bố có điều kiện có thể có bất kỳ số lượng điều kiện

if ($inventory > 0) echo "Add to Cart";
4 nào, nhưng chỉ một
if ($inventory > 0) echo "Add to Cart";
3.

Tuyên bố điều kiện lồng nhau

Giống như những con búp bê làm tổ, các tuyên bố có điều kiện có thể chứa các tuyên bố có điều kiện khác trong lồng nhau. Khi làm tổ các tuyên bố có điều kiện, sử dụng thụt khớp nhất quán giúp rất nhiều khả năng đọc. Hãy để mở rộng khi giảm giá để cung cấp thêm các lựa chọn:

$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}

Trong ví dụ này, giảm giá chỉ có sẵn cho những người ở Mỹ, vì vậy trước khi chúng tôi kiểm tra bất kỳ giảm giá nào, trước tiên chúng tôi xác minh rằng biến

$discount = 0;
if ($country !== 'USA') {
    // no discount for non-us locations
} elseif ($coupon_discount > .3) {
    $discount = $subtotal * $coupon_discount;
} elseif (count($cart) >= 10) {
    $discount = $subtotal * .3;
} elseif ($coupon_discount > .15) {
    $discount = $subtotal * $coupon_discount;
} elseif (count($cart) >= 5) {
    $discount = $subtotal * .15;
}
9 được đặt thành
$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;
0. Phần còn lại của các điều kiện sẽ chỉ đạt được nếu điều kiện đầu tiên đó là
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5.

Tiếp theo, chúng tôi kiểm tra xem số lượng vật phẩm trong giỏ hàng lớn hơn hoặc bằng 10. Nếu điều kiện thứ hai này là

if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5, thì chúng tôi sẽ kiểm tra xem giá trị của
$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;
3 lớn hơn giảm giá 30% bình thường khi đặt hàng từ 10 hoặc nhiều mục hơn. Nếu điều kiện thứ ba này là
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5, thì hãy sử dụng
$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;
3 để tính toán
$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;
6. Mặt khác, điều kiện thứ ba này là
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
2, sau đó sử dụng 30% bình thường để tính toán giảm giá.

Điều này đưa chúng ta đến khối

if ($inventory > 0) echo "Add to Cart";
3 của điều kiện thứ hai. Thay vì chỉ
if ($inventory > 0) echo "Add to Cart";
3, khối
if ($inventory > 0) echo "Add to Cart";
4 được sử dụng để xác minh rằng số lượng vật phẩm trong giỏ hàng lớn hơn hoặc bằng 5 trước khi đưa ra tùy chọn để giảm giá thứ cấp. Một lần nữa, chúng tôi kiểm tra một giá trị trong biến
$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;
3 lớn hơn mức chiết khấu khối lượng thứ cấp là 15%. Nếu điều kiện thứ tư này là đúng,
$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;
3 được sử dụng để tính toán
$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;
6. Mặt khác, điều kiện thứ tư này là
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
2, sau đó chúng tôi đạt mức giảm giá cuối cùng là 15%.

Các câu lệnh có điều kiện lồng nhau, giống như cái chúng ta vừa nhìn vào, có thể khó theo dõi, đặc biệt nếu bạn bắt đầu thêm các cấp độ bổ sung. Khi có thể, hãy xem xét làm thế nào bạn có thể viết lại một tuyên bố có điều kiện để loại bỏ làm tổ. Điều kiện trước đây cũng có thể được viết như sau:

$discount = 0;
if ($country !== 'USA') {
    // no discount for non-us locations
} elseif ($coupon_discount > .3) {
    $discount = $subtotal * $coupon_discount;
} elseif (count($cart) >= 10) {
    $discount = $subtotal * .3;
} elseif ($coupon_discount > .15) {
    $discount = $subtotal * $coupon_discount;
} elseif (count($cart) >= 5) {
    $discount = $subtotal * .15;
}

Vì PHP cho phép một khối có điều kiện trống, chúng tôi có thể kiểm tra quốc gia trước và bỏ qua mọi điều kiện khác. Lưu ý cẩn thận về biểu thức tiêu cực

if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
3 có nghĩa là quốc gia không khớp với giá trị
$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;
0. Mặc dù bạn có thể để một khối hoàn toàn trống rỗng, thêm một bình luận giải thích ý định để lại khối đó trống.

Đối với các khối

if ($inventory > 0) echo "Add to Cart";
4, chúng tôi bắt đầu với hạn chế nhất và hoạt động theo cách của chúng tôi. Một người nào đó ở Hoa Kỳ có phiếu giảm giá trị giá 20% (.2) sẽ có 3 khối đầu tiên đánh giá thành
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
2. Sau đó, họ sẽ đạt đến
if ($inventory > 0) echo "Add to Cart";
4 thứ ba, điều này sẽ đánh giá thành
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5 vì .2 lớn hơn 0,15. Việc giảm giá sẽ được tính toán và khối điều kiện cuối cùng sẽ được thông qua.

Cú pháp thay thế

Cú pháp phổ biến nhất cho các câu lệnh có điều kiện là sử dụng niềng răng xoăn, như các ví dụ trước đây cho thấy. PHP không cung cấp một cú pháp thay thế có thể giúp mọi thứ dễ đọc hơn khi có các khối mã dài giữa mỗi điều kiện hoặc khi một vòng lặp, cũng sử dụng niềng răng xoăn, được sử dụng trong một điều kiện. Cú pháp thay thế này được viết bằng cách sử dụng các dấu chấm câu sau tuyên bố có điều kiện và hoàn thiện khối có điều kiện bằng câu lệnh

if ($inventory > 0) {
    echo "Add to Cart";
}
11. Ví dụ giảm giá có thể được viết bằng cú pháp thay thế này như sau:

$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;

Trong khi làm tổ một vòng trong các khối có điều kiện này là chấp nhận được, việc làm tổ các điều kiện giòn trong các khối có điều kiện này có thể dẫn đến kết quả không mong muốn. Nó tốt nhất để gắn bó với niềng răng xoăn hoặc dấu chấm.

Lưu ý: Vì cách PHP xử lý khoảng trắng, nó sẽ chấp nhận khoảng trống giữa

if ($inventory > 0) echo "Add to Cart";
3 và
if ($inventory > 0) echo "Add to Cart";
2 khi sử dụng niềng răng xoăn:
if ($inventory > 0) {
    echo "Add to Cart";
}
14. Tuy nhiên, PHP sẽ thất bại với lỗi phân tích cú pháp nếu bạn sử dụng không gian khi sử dụng dấu hai chấm để xác định câu lệnh của bạn:
if ($inventory > 0) {
    echo "Add to Cart";
}
15. Trong thực tế, đó là một ý tưởng tốt để tránh không gian và luôn viết điều này dưới dạng
if ($inventory > 0) echo "Add to Cart";
4 duy nhất.
Because of the way PHP handles whitespace, it will accept spaces between
if ($inventory > 0) echo "Add to Cart";
3 and
if ($inventory > 0) echo "Add to Cart";
2 when using curly braces:
if ($inventory > 0) {
    echo "Add to Cart";
}
14. However, PHP will fail with a parse error if you use a space when using a colon to define your statement:
if ($inventory > 0) {
    echo "Add to Cart";
}
15. In practice, it’s a good idea to avoid spaces and always write this as the single
if ($inventory > 0) echo "Add to Cart";
4.

Các nhà khai thác so sánh bổ sung

Sử dụng một toán tử so sánh duy nhất trong mỗi câu lệnh có điều kiện không phải là cách duy nhất để sử dụng các toán tử so sánh. Chúng tôi không chỉ có thể kết hợp các điều kiện, chúng tôi cũng có thể sử dụng các toán tử so sánh bên ngoài một điều kiện.

Kết hợp các điều kiện bằng cách sử dụng các toán tử logic

Khi có nhiều điều kiện mà cả hai cần phải đúng hoặc nhiều điều kiện có cùng ảnh hưởng, các câu lệnh có điều kiện có thể được kết hợp thành một khối duy nhất bằng cách sử dụng các toán tử logic.

  • if ($inventory > 0) echo "Add to Cart";
    
    5 nói rằng cả hai điều kiện phải là
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5.
    if ($inventory > 0) echo "Add to Cart";
    
    5 says that both conditions must be
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5.

  • Hoặc

    if ($inventory > 0) echo "Add to Cart";
    
    6 nói rằng một trong hai điều kiện là
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5 hoặc cả hai đều có thể là
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5.
    if ($inventory > 0) echo "Add to Cart";
    
    6 says that either condition is
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5 or they could both be
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5.

  • XOR

    if ($inventory > 0) {
        echo "Add to Cart";
    }
    
    22 nói rằng chỉ một trong các điều kiện là
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5.
    if ($inventory > 0) {
        echo "Add to Cart";
    }
    
    22 says that only one of the conditions is
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5.

  • Không phải

    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    6 được sử dụng để phủ nhận một điều kiện, điều này thay đổi từ việc đánh giá
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5 sang đánh giá
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    2.
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    6 is used to negate a condition, which changes it from evaluating
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5 to evaluating
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    2.

  • if ($inventory > 0) {
        echo "Add to Cart";
    }
    
    27 nói rằng cả hai điều kiện phải là
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5.
    if ($inventory > 0) {
        echo "Add to Cart";
    }
    
    27 says that both conditions must be
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5.

  • Hoặc

    if ($inventory > 0) {
        echo "Add to Cart";
    }
    
    29 nói rằng một trong hai điều kiện là
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5 hoặc cả hai đều có thể là
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5.
    if ($inventory > 0) {
        echo "Add to Cart";
    }
    
    29 says that either condition is
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5 or they could both be
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    5.

Lý do cho hai biến thể khác nhau của và và các toán tử là chúng hoạt động ở các ưu tiên khác nhau. Sự ưu tiên của một toán tử chỉ định cách thức mà nó chặt chẽ, nó liên kết hai biểu thức với nhau hoặc theo thứ tự nào các hoạt động được đánh giá. . Các toán tử trong PHP không nhạy cảm trường hợp, có nghĩa là người vận hành cũng có thể được viết là

if ($inventory > 0) {
    echo "Add to Cart";
}
32 (hoặc thậm chí
if ($inventory > 0) {
    echo "Add to Cart";
}
33 hoặc
if ($inventory > 0) {
    echo "Add to Cart";
}
34, tôi không đề xuất). Để giảm thiểu sự nhầm lẫn, điều quan trọng nhất là phải nhất quán trong bất cứ điều gì bạn chọn. Tôi sẽ sử dụng
if ($inventory > 0) echo "Add to Cart";
5 và
if ($inventory > 0) echo "Add to Cart";
6 trong các ví dụ vì chúng tự nhiên hơn để đọc.and and or operators is that they operate at different precedences. The precedence of an operator specifies how “tightly” it binds two expressions together, or in what order the operations are evaluated. (See Documentation for Operator Precedence.) Either way is perfectly acceptable and works the same in most situations. Operators in PHP are case-insensitive, meaning the operator could also be written as
if ($inventory > 0) {
    echo "Add to Cart";
}
32 (or even
if ($inventory > 0) {
    echo "Add to Cart";
}
33 or
if ($inventory > 0) {
    echo "Add to Cart";
}
34, neither of which would I recommend). To minimize confusion, the most important thing is to be consistent in whichever you choose. I’ll be using
if ($inventory > 0) echo "Add to Cart";
5 and
if ($inventory > 0) echo "Add to Cart";
6 in the examples because they are more natural to read.

Sử dụng điều này trong ví dụ giảm giá: Để kiểm tra xem cả biến

$discount = 0;
if ($country !== 'USA') {
    // no discount for non-us locations
} elseif ($coupon_discount > .3) {
    $discount = $subtotal * $coupon_discount;
} elseif (count($cart) >= 10) {
    $discount = $subtotal * .3;
} elseif ($coupon_discount > .15) {
    $discount = $subtotal * $coupon_discount;
} elseif (count($cart) >= 5) {
    $discount = $subtotal * .15;
}
9 được đặt thành
$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;
0 và các mục trong giỏ hàng lớn hơn hoặc bằng 10, các điều kiện đó có thể được kết hợp bằng toán tử
if ($inventory > 0) echo "Add to Cart";
5:

if ($inventory > 0) {
    echo "Add to Cart";
}
0

Ví dụ có hai điều kiện

if ($inventory > 0) {
    echo "Add to Cart";
}
40 và
if ($inventory > 0) {
    echo "Add to Cart";
}
41. Nếu cả hai điều kiện này đánh giá thành
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5, mã trong khối đó sẽ được thực thi. Ví dụ này đã sử dụng toán tử
if ($inventory > 0) echo "Add to Cart";
5, nhưng nó cũng có thể đã sử dụng
if ($inventory > 0) {
    echo "Add to Cart";
}
44 hoặc thậm chí là toán tử
if ($inventory > 0) {
    echo "Add to Cart";
}
27 với cùng một kết quả chính xác.

Chúng tôi cũng có thể kết hợp các điều kiện có kết quả tương tự. Nếu có 10 mặt hàng trở lên trong giỏ hàng tạo ra giảm giá 30%hoặc có tổng phụ từ 100 đô la trở lên cũng sẽ giảm giá 30%, các điều kiện này có thể được kết hợp:

if ($inventory > 0) {
    echo "Add to Cart";
}
1

Nhiều hơn hai điều kiện cũng có thể được kết hợp; Tuy nhiên, hãy thận trọng hơn trong việc sử dụng của họ. Hãy để cố gắng kết hợp đánh giá quốc gia cùng với số lượng xe đẩy và so sánh phụ:

if ($inventory > 0) {
    echo "Add to Cart";
}
2

Ví dụ này không thực sự hoạt động theo cách mà nó được dự định bởi vì quốc gia được đánh giá với số lượng của giỏ hàng trước, sau đó kết quả đó được đánh giá so với so sánh phụ sử dụng

if ($inventory > 0) echo "Add to Cart";
6. Điều này có nghĩa là bất kể quốc gia hay giá trị đếm nào là gì, nếu
$discount = 0;
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} elseif (count($cart) >= 5) {
    $discount = $subtotal * .15
}
6 lớn hơn hoặc bằng
if ($inventory > 0) {
    echo "Add to Cart";
}
48, câu lệnh có điều kiện đầy đủ sẽ đánh giá thành
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5.

Dấu ngoặc đơn có thể được sử dụng để đảm bảo rằng các điều kiện được đánh giá theo thứ tự dự định:

if ($inventory > 0) {
    echo "Add to Cart";
}
3

Bây giờ số lượng giỏ hàng được đánh giá với so sánh phụ trước khi quốc gia được đánh giá với kết quả đó. Điều này cung cấp kết quả mong muốn của việc yêu cầu

$discount = 0;
if ($country !== 'USA') {
    // no discount for non-us locations
} elseif ($coupon_discount > .3) {
    $discount = $subtotal * $coupon_discount;
} elseif (count($cart) >= 10) {
    $discount = $subtotal * .3;
} elseif ($coupon_discount > .15) {
    $discount = $subtotal * $coupon_discount;
} elseif (count($cart) >= 5) {
    $discount = $subtotal * .15;
}
9 phải có giá trị là
$discount = 0;
if ($country !== 'USA'):
    // no discount for non-us locations
elseif ($coupon_discount > .3):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 10):
    $discount = $subtotal * .3;
elseif ($coupon_discount > .15):
    $discount = $subtotal * $coupon_discount;
elseif (count($cart) >= 5):
    $discount = $subtotal * .15;
else:
    $discount = $subtotal * .05;
endif;
0 và sau đó là số lượng của giỏ hàng hoặc so sánh phần phụ (hoặc cả hai) cũng phải đánh giá thành
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5.

Đôi khi, toàn bộ một khối có điều kiện là không bắt buộc để so sánh hai giá trị. PHP cung cấp một vài nhà khai thác so sánh tốc ký để mô tả chính xác hơn một tình huống.

Toán tử ternary

Khi có một kết quả nếu một biểu thức là đúng và một kết quả khác nếu cùng một biểu thức đó là sai, một toán tử ternary có thể được sử dụng. Biểu thức

if ($inventory > 0) {
    echo "Add to Cart";
}
53 đánh giá thành
if ($inventory > 0) {
    echo "Add to Cart";
}
54 nếu
if ($inventory > 0) {
    echo "Add to Cart";
}
55 đánh giá thành
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5 và
if ($inventory > 0) {
    echo "Add to Cart";
}
57 nếu
if ($inventory > 0) {
    echo "Add to Cart";
}
55 đánh giá thành
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
2. Hãy để nói rằng tên người dùng của khách truy cập nên được hiển thị
if ($inventory > 0) echo "Add to Cart";
2 họ đã đăng nhập, trong khi từ mà khách mời nên được hiển thị nếu không. Hàm
if ($inventory > 0) {
    echo "Add to Cart";
}
61 sẽ giúp chúng tôi đánh giá điều kiện này vì nó sẽ kiểm tra xem một biến có thực sự được xác định không. Nếu biến được xác định,
if ($inventory > 0) {
    echo "Add to Cart";
}
61 trả về
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5; Nếu không,
if ($inventory > 0) {
    echo "Add to Cart";
}
61 trả về
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
2:

if ($inventory > 0) {
    echo "Add to Cart";
}
4

Điều này giống hệt với tuyên bố

if ($inventory > 0) {
    echo "Add to Cart";
}
66 này:

if ($inventory > 0) {
    echo "Add to Cart";
}
5

Có thể bỏ qua phần giữa của toán tử ternary. Biểu thức

if ($inventory > 0) {
    echo "Add to Cart";
}
67 trả về
if ($inventory > 0) {
    echo "Add to Cart";
}
55 nếu
if ($inventory > 0) {
    echo "Add to Cart";
}
55 đánh giá là đúng và
if ($inventory > 0) {
    echo "Add to Cart";
}
57 khác. Để hiển thị tên người dùng hoặc từ Guest Guest, người vận hành ternary sẽ trông giống như:

if ($inventory > 0) {
    echo "Add to Cart";
}
6

Điều này hoạt động nếu

if ($inventory > 0) {
    echo "Add to Cart";
}
71 được đặt thành một chuỗi trống, nhưng nếu
if ($inventory > 0) {
    echo "Add to Cart";
}
71 hoàn toàn không được đặt, chúng tôi sẽ gặp lỗi. Hàm
if ($inventory > 0) {
    echo "Add to Cart";
}
61 không thể được sử dụng trong tình huống này, vì đầu ra của
if ($inventory > 0) {
    echo "Add to Cart";
}
74 sẽ là
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
5 hoặc
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
2, thay vì giá trị của
if ($inventory > 0) {
    echo "Add to Cart";
}
71. Điều này đưa chúng ta đến nhà điều hành tiếp theo của chúng tôi.

Nhà điều hành NULL kết hợp

Nhà điều hành Null Coalescing (

if ($inventory > 0) {
    echo "Add to Cart";
}
78) đã được thêm vào dưới dạng đường cú pháp (ngọt ngào nhưng không bắt buộc) cho trường hợp phổ biến cần sử dụng ternary kết hợp với
if ($inventory > 0) {
    echo "Add to Cart";
}
79. Nó trả lại toán hạng đầu tiên của nó nếu nó tồn tại và không phải là null; Nếu không, nó trả lại toán hạng thứ hai của nó. Để hiển thị tên người dùng hoặc từ Guest Guest, nhà điều hành Null Coalescing được sử dụng:

if ($inventory > 0) {
    echo "Add to Cart";
}
7

Nhà điều hành tàu vũ trụ

Toán tử tàu vũ trụ (

if ($inventory > 0) {
    echo "Add to Cart";
}
80) được sử dụng để so sánh hai biểu thức:
if ($inventory > 0) {
    echo "Add to Cart";
}
81. Nó trả về -1, 0 hoặc 1 khi
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
2 tương ứng nhỏ hơn (
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
7), bằng (
if ($inventory > 0) {
    echo "Add to Cart";
}
84) hoặc lớn hơn (
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
} else {
    $discount = 0;
}
9)
$discount = 0;
if ($country === 'USA') {
    if (count($cart) >= 10) {
        if ($coupon_discount > .3) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .3;
        }
    } elseif (count($cart) >= 5) {
        if ($coupon_discount > .15) {
            $discount = $subtotal * $coupon_discount;
        } else {
            $discount = $subtotal * .15
        }
    }
}
3:

if ($inventory > 0) {
    echo "Add to Cart";
}
8

CẢNH BÁO: Mặc dù toán tử tàu vũ trụ không được sử dụng thường xuyên, nhưng nó rất tiện dụng khi viết một chức năng sắp xếp do người dùng định nghĩa của người dùng (

if ($inventory > 0) {
    echo "Add to Cart";
}
87). Ví dụ sau đây bao gồm các khái niệm bổ sung mà bạn có thể chưa quen thuộc. Don Tiết lo lắng nếu bạn không theo dõi tất cả các mã ngay bây giờ. Tôi sẽ giải thích những gì mà diễn ra trong ví dụ, và chúng tôi sẽ đề cập đến các khái niệm này sâu hơn trong một hướng dẫn sau. Although the spaceship operator is not used often, it comes in very handy when writing a “user defined sort” (
if ($inventory > 0) {
    echo "Add to Cart";
}
87) function. The following example includes additional concepts you may not be familiar with yet. Don’t worry if you don’t follow all of the code right now. I’ll explain what’s going on in the example, and we’ll cover these concepts in more depth in a later tutorial.

Hãy để tạo ra một mảng các sản phẩm mới. Mỗi sản phẩm trong mảng sẽ lần lượt là mảng thuộc tính sản phẩm của riêng mình:

if ($inventory > 0) {
    echo "Add to Cart";
}
9

Bây giờ, hãy để nói rằng chúng tôi muốn sắp xếp mảng

if ($inventory > 0) {
    echo "Add to Cart";
}
88 này theo giá của mỗi mục, theo thứ tự giảm dần. Chúng ta có thể làm điều này bằng cách sử dụng hàm
if ($inventory > 0) {
    echo "Add to Cart";
}
87, sau đó chúng ta vượt qua một hàm ẩn danh để xử lý logic sắp xếp. Hãy cùng nhìn vào mã:

if ($inventory > 0) echo "Add to Cart";
0

Hàm

if ($inventory > 0) {
    echo "Add to Cart";
}
87 đang lấy hai đối số (các giá trị được truyền đến một hàm). Đối số đầu tiên là mảng
if ($inventory > 0) {
    echo "Add to Cart";
}
88. Thứ hai là một hàm ẩn danh cho biết hàm
if ($inventory > 0) {
    echo "Add to Cart";
}
87 phải làm gì với mỗi mục trong mảng. Nếu giá
if ($inventory > 0) {
    echo "Add to Cart";
}
93 nhỏ hơn giá
if ($inventory > 0) {
    echo "Add to Cart";
}
94, nhà điều hành sẽ trả lại
if ($inventory > 0) {
    echo "Add to Cart";
}
95, sẽ di chuyển
if ($inventory > 0) {
    echo "Add to Cart";
}
93 trước
if ($inventory > 0) {
    echo "Add to Cart";
}
94. Nếu giá là như nhau, nhà điều hành sẽ trả lại
$discount = 0;
if (count($cart) >= 5) {
    $discount = $subtotal * .15
}
if (count($cart) >= 10) {
    $discount = $subtotal * .3;
}
7, sẽ giữ các mặt hàng theo cùng một thứ tự. Cuối cùng, nếu giá
if ($inventory > 0) {
    echo "Add to Cart";
}
93 lớn hơn giá của
if ($inventory > 0) {
    echo "Add to Cart";
}
94, nhà điều hành sẽ trả lại
if ($inventory > 0) echo "Add to Cart";
01, sẽ đặt
if ($inventory > 0) {
    echo "Add to Cart";
}
93 sau
if ($inventory > 0) {
    echo "Add to Cart";
}
94, một lần nữa là thứ tự tương tự mà họ bắt đầu.

Để sắp xếp theo giá theo thứ tự tăng dần, chúng tôi lật vị trí của

if ($inventory > 0) {
    echo "Add to Cart";
}
94 và
if ($inventory > 0) {
    echo "Add to Cart";
}
93, thay đổi thứ tự so sánh:

if ($inventory > 0) echo "Add to Cart";
1

Sự kết luận

Các câu lệnh có điều kiện cung cấp cho chúng tôi kiểm soát dòng chảy để xác định các lựa chọn đầu ra của các chương trình của chúng tôi. Chúng là một trong những khối xây dựng nền tảng của lập trình và có thể được tìm thấy trong hầu hết tất cả các ngôn ngữ lập trình.

Hướng dẫn này bao gồm cả hai toán tử so sánh để so sánh các giá trị và toán tử logic để kết hợp các điều kiện. Nó đã chứng minh việc sử dụng các từ khóa

if ($inventory > 0) echo "Add to Cart";
2,
if ($inventory > 0) echo "Add to Cart";
3 và
if ($inventory > 0) echo "Add to Cart";
4 trong khi xem xét các câu lệnh lồng nhau và kết hợp các điều kiện. Cuối cùng, nó đã giới thiệu việc sử dụng các toán tử so sánh bổ sung, bao gồm toán tử ternary, toán tử Null Coalescing và toán tử tàu vũ trụ. Để tiếp tục thực hành các tuyên bố có điều kiện:

  • Hãy thử sử dụng các toán tử khác nhau:
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    7,
    if (count($cart) >= 10) {
        $discount = $subtotal * .3;
    } else {
        $discount = 0;
    }
    
    9,
    if ($inventory > 0) echo "Add to Cart";
    
    7,
    if ($inventory > 0) echo "Add to Cart";
    
    8
  • Kết hợp các toán tử với
    if ($inventory > 0) echo "Add to Cart";
    
    5 hoặc
    if ($inventory > 0) echo "Add to Cart";
    
    6
  • Tái tạo một tuyên bố ____22

Để biết thêm thông tin về cách viết mã trong PHP, hãy xem các hướng dẫn khác trong Sê -ri Cách viết trong loạt PHP.

4 loại câu lệnh IF là gì?

Các loại câu tuyên bố..
Đơn giản nếu tuyên bố ..
Tuyên bố IF-Else ..
Tuyên bố if-else lồng nhau ..
Khác-nếu thang ..

Có bao nhiêu câu có điều kiện PHP?

Trong PHP, có 4 loại tuyên bố có điều kiện khác nhau.4 different types of Conditional Statements.

Tại sao các tuyên bố có điều kiện được sử dụng trong PHP?

PHP cho phép bạn chọn hành động nào dựa trên kết quả của một điều kiện.

Có bao nhiêu loại câu lệnh PHP?

PHP có tám loại tuyên bố chính (một số có biến thể nhỏ):eight principal types of statement (some with slight variants):