Bagaimana untuk menentukan sama ada nilai berada dalam tatasusunan dalam php

PHPz
Lepaskan: 2023-04-26 10:38:43
asal
1047 orang telah melayarinya

Dalam pembangunan PHP, kita selalunya perlu menentukan sama ada nilai berada dalam tatasusunan. Jika nilai berada dalam tatasusunan, kita boleh terus menggunakan fungsi in_array() untuk menentukan, tetapi jika nilai tiada dalam tatasusunan, bagaimana untuk menentukan? Artikel ini akan memperkenalkan pelbagai kaedah untuk menentukan sama ada nilai berada dalam tatasusunan.

Kaedah 1: Gunakan fungsi in_array() untuk menyongsangkan

Fungsi in_array() boleh menentukan sama ada nilai berada dalam tatasusunan, dan jika tidak, mengembalikan palsu.

Kita boleh menggunakan ciri ini untuk menentukan bahawa nilai tiada dalam tatasusunan.

Contoh kod:

$needle = 'apple';
$fruits = ['banana', 'orange', 'grape'];

if (!in_array($needle, $fruits)) {
    echo $needle . ' is not in the fruits array.';
}
Salin selepas log masuk

Hasil keluaran:

apple is not in the fruits array.
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kaedah 2: Gunakan fungsi array_search()

fungsi array_search() boleh ditemui dalam Mencari tatasusunan untuk nilai dan mengembalikan kunci nilai. Jika nilai tiada dalam tatasusunan, mengembalikan palsu.

Kita boleh menggunakan ciri ini untuk menentukan bahawa nilai tiada dalam tatasusunan.

Contoh kod:

$needle = 'apple';
$fruits = ['banana', 'orange', 'grape'];

if (array_search($needle, $fruits) === false) {
    echo $needle . ' is not in the fruits array.';
}
Salin selepas log masuk

Hasil output:

apple is not in the fruits array.
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kaedah 3: Gunakan fungsi array_diff()

fungsi array_diff() boleh dikira Ia memerlukan perbezaan dua atau lebih tatasusunan, iaitu, ia mencari nilai yang tiada dalam tatasusunan.

Kita boleh mengira perbezaan antara nilai yang akan dinilai sebagai tatasusunan dengan hanya satu elemen dan tatasusunan asal Jika hasil set perbezaan adalah tatasusunan kosong, ini bermakna nilai yang akan dinilai adalah bukan dalam tatasusunan asal.

Contoh kod:

$needle = 'apple';
$fruits = ['banana', 'orange', 'grape'];

if (empty(array_diff([$needle], $fruits))) {
    echo $needle . ' is not in the fruits array.';
}
Salin selepas log masuk

Hasil keluaran:

apple is not in the fruits array.
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kaedah 4: Gunakan fungsi count()

Kita boleh menggunakan count() Fungsi ini mendapat bilangan elemen dalam tatasusunan dan menentukan bilangan kali nilai yang ditemui muncul dalam tatasusunan asal.

Contoh kod:

$needle = 'apple';
$fruits = ['banana', 'orange', 'grape'];

if (count(array_keys($fruits, $needle)) === 0) {
    echo $needle . ' is not in the fruits array.';
}
Salin selepas log masuk

Hasil keluaran:

apple is not in the fruits array.
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kaedah 5: Gunakan gelung foreach

Kita boleh menggunakan gelung foreach untuk melintasi tatasusunan, Mencari sama ada nilai yang akan dinilai berada dalam tatasusunan. Jika nilai yang akan dinilai tidak ditemui selepas merentasi tatasusunan, ini bermakna nilai itu tiada dalam tatasusunan.

Contoh kod:

$needle = 'apple';
$fruits = ['banana', 'orange', 'grape'];

$found = false;
foreach ($fruits as $fruit) {
    if ($fruit === $needle) {
        $found = true;
        break;
    }
}

if (!$found) {
    echo $needle . ' is not in the fruits array.';
}
Salin selepas log masuk

Hasil keluaran:

apple is not in the fruits array.
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kaedah 6: Gunakan fungsi array_key_exists()

Jika nama kunci bagi tatasusunan ialah String, kita boleh menggunakan fungsi array_key_exists() untuk menentukan sama ada kunci wujud dalam tatasusunan.

Contoh kod:

$needle = 'apple';
$fruits = ['banana' => 1, 'orange' => 1, 'grape' => 1];

if (!array_key_exists($needle, $fruits)) {
    echo $needle . ' is not in the fruits array.';
}
Salin selepas log masuk

Hasil keluaran:

apple is not in the fruits array.
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kesimpulan

Artikel ini memperkenalkan berbilang kaedah untuk menentukan bahawa nilai tiada dalam tatasusunan itu. Setiap kaedah mempunyai kelebihan dan kekurangannya, dan kita boleh memilih kaedah yang paling sesuai mengikut situasi tertentu. Dalam pembangunan sebenar, kami juga boleh menggunakan teknik ini secara fleksibel dalam kombinasi dengan senario tertentu untuk meningkatkan kecekapan pembangunan dan kualiti kod.

Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada nilai berada dalam tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan