Hướng dẫn php if equal to multiple values - php nếu bằng nhiều giá trị

Đối với mã đầu tiên của bạn, bạn có thể sử dụng một sự thay đổi ngắn của câu trả lời được đưa ra bởi @shankardamodaran bằng cách sử dụng in_array[]:

if [ !in_array[$some_variable, array['uk','in'], true ] ] {

hoặc thậm chí ngắn hơn với ký hiệu

if [ !in_array[$some_variable, ['uk','in'], true ] ] {
0 có sẵn kể từ Php 5.4 như được chỉ ra bởi @forty trong các bình luận

if [ !in_array[$some_variable, ['uk','in'], true ] ] {

giống như:

if [ $some_variable !== 'uk' && $some_variable !== 'in' ] {

... nhưng ngắn hơn. Đặc biệt nếu bạn so sánh nhiều hơn chỉ là 'uk' và 'trong'. Tôi không sử dụng một biến bổ sung [Shankar đã sử dụng $ OS] mà thay vào đó xác định mảng trong câu lệnh IF. Một số có thể thấy rằng bẩn, tôi thấy nó nhanh chóng và gọn gàng: D

Vấn đề với mã thứ hai của bạn là nó có thể dễ dàng được trao đổi với sự thật vì:

if [true] {

bằng nhau

if [ $some_variable !== 'uk' || $some_variable !== 'in' ] {

Bạn đang hỏi liệu giá trị của một chuỗi không phải là A hay không B. Nếu đó là A, nó chắc chắn cũng không phải là Cũng không phải là và không B. Vì vậy, tuyên bố đó luôn luôn [không tính đến luật Schrödingers ở đây] trả về đúng.

Không bằng nhiều giá trị python?
Updated on August 28th, 2020

Sử dụng toán tử không trong để kiểm tra xem một biến không bằng nhiều giá trị, ví dụ: Nếu my_str không trong nhiều_values:. Không trong toán tử sẽ trả về true nếu biến không bằng bất kỳ giá trị được chỉ định nào và sai nếu không.

Được xuất bản lần đầu vào ngày 28 tháng 9 năm 2018 được cập nhật vào ngày 28 tháng 8 năm 2020

if [$test_variable === 'value1' || $test_variable === 'value2' || $test_variable === 'value3' || $test_variable === 'value4'] {
    // do something if $test_variable is equal to one of the strings
}

Khi so sánh một biến với nhiều giá trị, hãy xem xét sử dụng in_array[], thay vì các biểu thức

if [ !in_array[$some_variable, ['uk','in'], true ] ] {
2 phức tạp.

Tôi yêu mã sạch, dễ đọc, đó là lý do tại sao tôi không phải là fan hâm mộ của các câu lệnh
if [ !in_array[$some_variable, ['uk','in'], true ] ] {
2 với các biểu thức phức tạp. Ví dụ, hãy xem xét đoạn trích sau đây, đang kiểm tra một biến so với một số giá trị:

Điều này không đẹp và chắc chắn không cảm thấy rất khô khan.

if [in_array[$test_variable, ['value1', 'value2', 'value3', 'value4']] {
    // do something if $test_variable is equal to one of the strings in the array
}

Sử dụng in_array [] làm điều kiện

Bây giờ hãy xem xét đoạn mã sau, lần này sử dụng hàm

if [ !in_array[$some_variable, ['uk','in'], true ] ] {
4 làm biểu thức có điều kiện của câu lệnh
if [ !in_array[$some_variable, ['uk','in'], true ] ] {
2:

$test_array = [
    'value1',
    'value2',
    'value3',
    'value4'
];
if [in_array[$test_variable, $test_array] {
    // do something if $test_variable is equal to one of the strings in $test_array
}

Theo tôi, đây là một giải pháp sạch hơn nhiều mà dễ đọc hơn, đặc biệt là nếu mã được duy trì bởi một nhóm các nhà phát triển, trong đó có thể lập trình viên viết mã sẽ không phải là người duy trì nó.

Cách tiếp cận khác

Sử dụng

if [ !in_array[$some_variable, ['uk','in'], true ] ] {
4 chỉ là một cách để cải thiện khả năng đọc của mã, một cách khác là câu lệnh
if [ !in_array[$some_variable, ['uk','in'], true ] ] {
7, sẽ xử lý sự phức tạp của câu lệnh
if [ !in_array[$some_variable, ['uk','in'], true ] ] {
2. Ở đây, một cách để viết đoạn mã bằng cách sử dụng
if [ !in_array[$some_variable, ['uk','in'], true ] ] {
9:

switch [$test_variable] {
    case 'value1':
    case 'value2':
    case 'value3':
    case 'value4':
        $value_exists = true;
        break;
    default: 
        $value_exists = false;
}

if [$value_exists] {
    // do something if $value_exists is true
}

Nhưng, sở thích cá nhân của tôi là sử dụng in_array, vì nó cảm thấy sạch hơn.

Gói lên

Nếu bạn nghĩ rằng bạn Codebase đang cần tái cấu trúc, để cải thiện khả năng đọc [và hiệu suất], vui lòng liên hệ và chúng tôi sẽ sẵn sàng giúp đỡ. Chúng tôi có nhiều năm kinh nghiệm lập trình, trong một loạt các ngôn ngữ, bao gồm PHP, Java, JavaScript và [s] CSS. Chúng tôi cũng chuyên phát triển WordPress, phát triển các chủ đề và plugin tùy chỉnh và giúp khách hàng tất cả các cách thực hiện, bao gồm tối ưu hóa công cụ tìm kiếm.

Tệp này chứa văn bản unicode hai chiều có thể được giải thích hoặc biên dịch khác với những gì xuất hiện dưới đây. Để xem xét, hãy mở tệp trong một trình soạn thảo cho thấy các ký tự Unicode ẩn. Tìm hiểu thêm về các ký tự unicode hai chiều

// Xem ở đây
// Xem ở đây
//
// kiểm tra php nếu một biến không bằng nhau
// với nhiều điều kiện
if [! in_array [$ some_varable, mảng ['uk', 'in'], true]] { [ !in_array[$some_variable, array['uk','in'], true ] ] {
}
// giống như ở đây
if [$ some_varable! == 'uk' && $ some_varable! == 'in'] { [ $some_variable !== 'uk' && $some_variable !== 'in' ] {
}

Làm thế nào để so sánh nhiều giá trị trong PHP?

Hàm mảng_diff [] so sánh các giá trị của hai mảng [hoặc nhiều] và trả về sự khác biệt.array_diff[] function compares the values of two [or more] arrays, and returns the differences.

Làm thế nào để bạn kiểm tra xem một biến không bằng nhiều giá trị?

Để kiểm tra xem một biến không bằng nhiều giá trị: sử dụng toán tử logic và [&&] để chuỗi nhiều điều kiện. Trong mỗi điều kiện, hãy sử dụng toán tử bất bình đẳng nghiêm ngặt [! ==] để kiểm tra xem biến không bằng giá trị.Nếu tất cả các điều kiện vượt qua, biến không bằng bất kỳ giá trị nào.Use the logical and [&&] operator to chain multiple conditions. In each condition, use the strict inequality operator [! ==] to check that the variable is not equal to the value. If all conditions pass, the variable is not equal to any of the values.

Làm thế nào để so sánh trong PHP?

Toán tử bằng nhau == Toán tử so sánh được gọi là toán tử bằng nhau là dấu hiệu gấp đôi dấu hiệu ==.Toán tử này chấp nhận hai đầu vào để so sánh và trả về giá trị thực nếu cả hai giá trị đều giống nhau [nó chỉ so sánh giá trị của biến, không phải loại dữ liệu] và trả về giá trị sai nếu cả hai giá trị không giống nhau.The comparison operator called Equal Operator is the double equal sign “==”. This operator accepts two inputs to compare and returns true value if both of the values are same [It compares only value of variable, not data types] and return a false value if both of the values are not same.

Không bằng nhiều giá trị python?

Sử dụng toán tử không trong để kiểm tra xem một biến không bằng nhiều giá trị, ví dụ:Nếu my_str không trong nhiều_values:.Không trong toán tử sẽ trả về true nếu biến không bằng bất kỳ giá trị được chỉ định nào và sai nếu không., e.g. if my_str not in multiple_values: . The not in operator will return True if the variable is not equal to any of the specified values and False otherwise.

Bài Viết Liên Quan

Chủ Đề