Rumah >pembangunan bahagian belakang >masalah PHP >PHP menentukan sama ada data wujud dalam tatasusunan

PHP menentukan sama ada data wujud dalam tatasusunan

PHPz
PHPzasal
2023-05-19 16:32:09700semak imbas

Dalam PHP, selalunya perlu untuk menentukan sama ada sekeping data wujud dalam tatasusunan. Pada masa ini, anda boleh menggunakan kaedah berikut:

1 Gunakan fungsi in_array:

Fungsi in_array ialah fungsi yang biasa digunakan dalam PHP untuk menentukan sama ada data wujud dalam tatasusunan. Prototaip fungsinya ialah :

bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )

Antaranya, parameter jarum menunjukkan nilai yang akan ditemui, tumpukan jerami menunjukkan tatasusunan yang akan ditemui, dan ketat menunjukkan sama ada untuk menggunakan mod ketat untuk perbandingan. Contohnya:

$arr = array(1, 2, 3, 'a', 'b', 'c');
if (in_array(1, $arr)) {
    echo '存在';
} else {
    echo '不存在';
}

Dalam kod di atas, takrifkan tatasusunan $arr dahulu, dan kemudian gunakan fungsi in_array untuk menentukan sama ada 1 berada di dalamnya. Oleh kerana 1 sememangnya dalam tatasusunan, output "wujud".

2. Gunakan fungsi array_search:

Fungsi carian_tatasusunan ialah satu lagi fungsi yang menentukan sama ada data wujud dalam tatasusunan ialah:

mixed array_search ( mixed $needle , array $haystack [, bool $strict = FALSE ] )

Antaranya, parameter jarum Menunjukkan nilai yang akan ditemui, tumpukan jerami menunjukkan tatasusunan yang akan dicari, dan ketat menunjukkan sama ada untuk menggunakan mod ketat untuk perbandingan. Jika ditemui, fungsi mengembalikan nama kunci elemen dalam tatasusunan, jika tidak ia mengembalikan palsu. Contohnya:

$arr = array(1, 2, 3, 'a', 'b', 'c');
$key = array_search('a', $arr);
if ($key !== false) {
    echo '存在于数组中,键名为:' . $key;
} else {
    echo '不存在';
} 

Dalam kod di atas, tentukan tatasusunan $arr, dan kemudian gunakan fungsi carian_tatasusunan untuk mencari nilai 'a' dalam tatasusunan Jika ia wujud, kembalikan nama kunci, jika tidak, kembalikan palsu .

3. Gunakan fungsi tersuai in_array dan array_search:

Kadangkala kita perlu menyesuaikan fungsi untuk menentukan sama ada data wujud dalam tatasusunan mengikut keperluan yang berbeza. Sebagai contoh, jika kita ingin menentukan sama ada rentetan ialah subrentetan rentetan lain (iaitu, sama ada ia mengandungi), kita boleh menggunakan kod berikut:

function is_substr($str, $substr) {
    return strpos($str, $substr) !== false;
}

$str = 'hello world';
$substr = 'world';
if (is_substr($str, $substr)) {
    echo '包含';
} else {
    echo '不包含';
}

Dalam kod di atas, fungsi tersuai is_substr ialah ditakrifkan untuk menentukan aksara Sama ada rentetan itu adalah subrentetan daripada rentetan lain, strpos fungsi terbina dalam PHP digunakan. Fungsi ini mengembalikan kedudukan rentetan dalam rentetan lain, atau palsu jika ia tidak wujud. Jika ia dijumpai, iaitu, kedudukan adalah bukan negatif, fungsi mengembalikan benar, jika tidak ia mengembalikan palsu.

Ringkasnya, dalam PHP untuk menentukan sama ada data wujud dalam tatasusunan, fungsi in_array dan array_search adalah yang paling biasa digunakan dan mudah. Jika anda mempunyai keperluan khas, anda boleh menyesuaikan fungsi yang sepadan.

Atas ialah kandungan terperinci PHP menentukan sama ada data wujud dalam tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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