Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menentukan sama ada nilai berada dalam tatasusunan dalam php

Bagaimana untuk menentukan sama ada nilai berada dalam tatasusunan dalam php

PHPz
PHPzasal
2023-04-25 17:35:41678semak imbas

PHP, sebagai bahasa skrip yang digunakan secara meluas dalam pembangunan web, mempunyai keupayaan pemprosesan data yang kukuh, antaranya tatasusunan merupakan salah satu jenis data penting dalam PHP. Dalam PHP, kita selalunya perlu menentukan sama ada nilai wujud dalam tatasusunan, jadi menentukan sama ada nilai dalam PHP dalam tatasusunan ialah masalah yang sangat biasa Artikel ini akan meneroka isu ini secara mendalam.

1. Pengenalan kepada tatasusunan PHP

Dalam PHP, tatasusunan ialah jenis data yang biasa digunakan dengan ciri-ciri berikut:

  1. Tatasusunan PHP ialah senarai tersusun , setiap satu elemen mempunyai nilai kunci unik (iaitu subskrip), yang boleh menjadi integer atau rentetan.
  2. Nilai utama tatasusunan PHP boleh berkembang secara automatik.
  3. Nilai tatasusunan PHP boleh terdiri daripada sebarang jenis data, termasuk integer, titik terapung, Boolean, rentetan, objek, dsb.

Sebagai contoh, berikut ialah tatasusunan PHP mudah:

$cities=array("Beijing","Shanghai","Guangzhou","Shenzhen");

Dalam tatasusunan ini, $cities ialah nama pembolehubah tatasusunan dan array("Beijing","Shanghai","Guangzhou","Shenzhen") ialah tatasusunan empat Tatasusunan yang terdiri daripada elemen Setiap elemen sepadan dengan nama bandar jenis rentetan, dan subskrip masing-masing adalah 0, 1, 2, dan 3.

2. Bagaimana untuk menentukan sama ada nilai berada dalam tatasusunan dalam PHP

Sekarang dengan mengandaikan kita mempunyai tatasusunan $arr dan nilai $value, kita perlu menentukan sama ada nilai ini dalam tatasusunan. Terdapat banyak cara untuk mencapai ini dalam PHP, termasuk menggunakan fungsi in_array(), menggunakan fungsi array_search(), menggunakan fungsi isset() dan array_key_exists(), dsb., yang diperkenalkan di bawah.

  1. Gunakan fungsi in_array() untuk menentukan sama ada nilai berada dalam tatasusunan

in_array() Fungsi ini digunakan untuk menyemak sama ada nilai wujud dalam tatasusunan dan mengembalikan nilai Boolean . Mengembalikan $value jika $arr wujud dalam True, jika tidak mengembalikan False.

in_array($value,$arr);

Berikut ialah contoh:

$fruits=array("apple","banana","orange","kiwi");
if(in_array("banana",$fruits)){
    echo "查找到了值!";
}else{
    echo "未查找到值.";
}

Kod ini akan mengeluarkan 查找到了值!.

  1. Gunakan fungsi array_search() untuk menentukan sama ada nilai berada dalam tatasusunan

array_search() Fungsi ini digunakan untuk cuba mencari elemen dalam tatasusunan dan kembalikan kuncinya (iaitu subskrip). Jika $value wujud dalam $arr, mengembalikan kunci elemen, jika tidak mengembalikan False.

array_search($value,$arr);

Berikut ialah contoh:

$fruits=array("apple","banana","orange","kiwi");
$index=array_search("banana",$fruits);
echo $index;

Kod ini akan mengeluarkan 1 kerana banana sepadan dengan elemen kedua dalam tatasusunan $fruits, subskripnya ialah 1.

Perlu diambil perhatian bahawa jika $value sepadan dengan berbilang elemen, hanya subskrip elemen pertama yang ditemui akan dikembalikan.

  1. Gunakan fungsi isset() dan array_key_exists() untuk menentukan sama ada nilai berada dalam tatasusunan

isset() Fungsi digunakan untuk mengesan sama ada pembolehubah itu set, jika pembolehubah wujud dan nilainya bukan NULL, kemudian kembalikan True, jika tidak kembalikan False. Fungsi

isset($arr[$key]);

array_key_exists() digunakan untuk menyemak sama ada kunci atau indeks yang ditentukan wujud dalam tatasusunan. Mengembalikan $key jika $arr wujud dalam True, jika tidak mengembalikan False.

array_key_exists($key,$arr);

Berikut ialah contoh:

$fruits=array("apple"=>1,"banana"=>2,"orange"=>3,"kiwi"=>4);
if(isset($fruits["banana"])){
    echo "查找到了值!";
}else{
    echo "未查找到值.";
}

Kod ini akan mengeluarkan 查找到了值! kerana terdapat elemen dengan kunci banana dalam tatasusunan.

3. Perbandingan tiga kaedah dalam PHP

Menggunakan fungsi in_array() dan fungsi array_search() adalah kaedah yang lebih biasa, dan ia juga merupakan kaedah yang lebih cekap.

in_array() Fungsi mengembalikan nilai Boolean, tidak perlu menanyakan kedudukan elemen dalam tatasusunan, dan ia lebih pantas. Fungsi array_search() mengembalikan indeks elemen dalam tatasusunan, yang lebih perlahan sedikit.

Menggunakan fungsi isset() dan fungsi array_key_exists() lebih biasa digunakan untuk tatasusunan bersekutu (iaitu tatasusunan yang subskripnya adalah rentetan). Perbezaan antara kedua-dua fungsi ini ialah fungsi isset() mengembalikan True apabila nilai sasaran wujud, dan masih mengembalikan False apabila nilai sasaran tidak wujud dan fungsi array_key_exists() mengembalikan False apabila sasaran nilai tidak wujud hanya mengembalikan True jika nilai sasaran wujud.

4. Ringkasan

Menentukan sama ada nilai wujud dalam tatasusunan ialah keperluan biasa dalam PHP Artikel ini memperkenalkan tiga kaedah dalam PHP: menggunakan fungsi in_array(), menggunakan fungsi array_search() dan gunakan fungsi isset() dan array_key_exists(). Kaedah ini agak mudah dalam pelaksanaan dan boleh dipilih dan digunakan mengikut keperluan. Pada masa yang sama, kaedah atau algoritma lain juga boleh dipilih mengikut situasi sebenar. Walau apa pun, kuncinya ialah pertukaran antara ketepatan dan kecekapan.

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!

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