Rumah >pembangunan bahagian belakang >masalah PHP >kedudukan kandungan pertanyaan php dalam tatasusunan

kedudukan kandungan pertanyaan php dalam tatasusunan

PHPz
PHPzasal
2023-05-05 22:59:081306semak imbas

Dalam PHP, kadangkala kita perlu mencari kedudukan elemen tertentu dalam tatasusunan Keperluan ini sering ditemui dalam pengaturcaraan. Kerana dalam senario perniagaan sebenar, kita perlu mencari elemen tertentu daripada tatasusunan dan kemudian melaksanakan operasi lain.

Jadi dalam PHP, bagaimanakah kita menanyakan kedudukan elemen dalam tatasusunan? Di bawah ini kami akan memperkenalkan beberapa kaedah pelaksanaan secara terperinci.

Kaedah 1: Gunakan fungsi in_array() untuk membuat pertanyaan

Fungsi in_array() boleh bertanya sama ada nilai wujud dalam tatasusunan. Fungsi ini mengembalikan benar jika ada, palsu sebaliknya. Jika kita hanya perlu mengetahui sama ada nilai tertentu wujud dalam tatasusunan dan tidak mengambil berat tentang kedudukan khususnya dalam tatasusunan, maka kita boleh menggunakan fungsi in_array() secara langsung.

Kod sampel:

$arr = array("apple", "banana", "orange");
if (in_array("banana", $arr)) {
  echo "banana exists in the array";
} else {
  echo "banana does not exist in the array";
}

Hasil keluaran:

banana exists in the array

Sudah tentu, kita juga boleh menanyakan kedudukan elemen dalam tatasusunan melalui fungsi in_array():

$arr = array("apple", "banana", "orange");
$position = array_search("banana", $arr);
if ($position !== false) {
  echo "banana exists in the array at position " . $position;
} else {
  echo "banana does not exist in the array";
}

Hasil keluaran:

banana exists in the array at position 1

Perlu diambil perhatian bahawa jika elemen tidak wujud dalam tatasusunan, fungsi array_search() akan kembali palsu. Oleh itu, apabila menggunakan fungsi ini, pastikan anda melakukan pemeriksaan jenis untuk mengelakkan ralat.

Kaedah 2: Gunakan fungsi array_search() untuk membuat pertanyaan

Fungsi array_search() boleh mencari kedudukan elemen dalam tatasusunan dan mengembalikan nama kunci elemen dalam tatasusunan. Jika elemen tidak wujud dalam tatasusunan, fungsi mengembalikan palsu.

Kod sampel:

$arr = array("apple", "banana", "orange");
$position = array_search("banana", $arr);
if ($position !== false) {
  echo "banana exists in the array at position " . $position;
} else {
  echo "banana does not exist in the array";
}

Hasil keluaran:

banana exists in the array at position 1

Perlu diambil perhatian bahawa fungsi array_search() hanya mengembalikan kedudukan padanan pertama elemen dalam tatasusunan . Jika elemen muncul beberapa kali dalam tatasusunan, fungsi itu hanya mengembalikan kedudukan pertama elemen dalam tatasusunan.

Kaedah 3: Gunakan fungsi array_keys() untuk membuat pertanyaan

Fungsi array_keys() boleh mengembalikan semua nama kunci dalam tatasusunan yang sama dengan nilai yang ditentukan, dan nama kunci ini membentuk yang baharu tatasusunan. Jika nilai yang diberikan tidak wujud dalam tatasusunan, fungsi itu mengembalikan tatasusunan kosong.

Kod sampel:

$arr = array("apple", "banana", "orange", "banana");
$positions = array_keys($arr, "banana");
if (count($positions) > 0) {
  echo "banana exists in the array at positions " . implode(", ", $positions);
} else {
  echo "banana does not exist in the array";
}

Hasil keluaran:

banana exists in the array at positions 1, 3

Perlu diambil perhatian bahawa fungsi array_keys() akan mengembalikan semua nama kunci dalam tatasusunan yang sama dengan yang diberikan nilai, jadi Jika elemen muncul beberapa kali dalam tatasusunan, fungsi mengembalikan berbilang kedudukan.

Ringkasan:

Di atas ialah tiga kaedah untuk menanyakan kedudukan elemen dalam tatasusunan dalam PHP. Mana satu untuk dipilih bergantung pada keadaan sebenar. Jika anda hanya perlu mengetahui sama ada nilai tertentu wujud dalam tatasusunan, gunakan fungsi in_array() jika anda perlu menanyakan kedudukan elemen dalam tatasusunan, anda boleh menggunakan fungsi array_search() jika anda perlu bertanya semua padanan elemen dalam lokasi tatasusunan, anda boleh menggunakan fungsi array_keys().

Atas ialah kandungan terperinci kedudukan kandungan pertanyaan php 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