Rumah > pembangunan bahagian belakang > masalah PHP > PHP menentukan elemen tatasusunan yang mana

PHP menentukan elemen tatasusunan yang mana

WBOY
Lepaskan: 2023-05-06 09:41:07
asal
900 orang telah melayarinya

Dalam PHP, menentukan kedudukan elemen dalam tatasusunan ialah operasi yang sangat biasa. Artikel ini akan memperkenalkan beberapa kaedah untuk menentukan kedudukan elemen dalam tatasusunan.

Kaedah 1: Gunakan fungsi array_search()

Dalam PHP, anda boleh terus menggunakan fungsi array_search() untuk mencari kedudukan elemen dalam tatasusunan, dan nilai pulangan ialah nilai kunci yang sepadan dengan kedudukan elemen. Jika tidak dijumpai, kembalikan palsu.

Kod sampel:

$arr = array('apple', 'banana', 'orange');
$pos = array_search('banana', $arr);
echo $pos;   // 输出 1
Salin selepas log masuk

Dalam contoh di atas, fungsi array_search() digunakan untuk mencari kedudukan elemen 'banana' dalam array $arr, dan nilai pulangan ialah 1 .

Perlu diingatkan bahawa menggunakan kaedah ini hanya boleh menentukan kedudukan elemen pertama dalam tatasusunan yang memenuhi syarat Jika terdapat berbilang elemen yang memenuhi syarat, hanya kedudukan elemen pertama sahaja diperolehi.

Kaedah 2: Gunakan fungsi array_keys()

Fungsi array_keys() boleh mengembalikan tatasusunan kedudukan semua elemen dalam tatasusunan yang nilai kuncinya sama dengan nilai yang ditentukan . Nama kunci dalam tatasusunan yang dikembalikan sepadan dengan Lokasi elemen. Jika tidak dijumpai, tatasusunan kosong dikembalikan.

Kod sampel:

$arr = array('apple', 'banana', 'orange', 'banana');
$pos = array_keys($arr, 'banana');
print_r($pos);   // 输出 Array ( [0] => 1 [1] => 3 )
Salin selepas log masuk

Dalam contoh di atas, fungsi array_keys() digunakan untuk mencari kedudukan elemen 'banana' dalam array $arr, dan nilai pulangan ialah tatasusunan yang mengandungi kedudukan 1 dan 3 .

Perlu diambil perhatian bahawa kaedah ini hanya boleh menentukan kedudukan semua elemen yang memenuhi syarat, dan tidak boleh mendapatkan nilai elemen tertentu atau maklumat lain.

Kaedah 3: Gunakan gelung foreach()

Gunakan gelung foreach() untuk melintasi tatasusunan, anda boleh menilai elemen dalam tatasusunan satu demi satu dan merekodkan maklumat kedudukan elemen pada masa yang sama.

Kod sampel:

$arr = array('apple', 'banana', 'orange', 'banana');
foreach($arr as $key => $value) {
    if($value == 'banana') {
        echo $key;   // 输出 1 3
    }
}
Salin selepas log masuk

Dalam contoh di atas, gunakan foreach() untuk menggelungkan melalui tatasusunan $arr, tentukan sama ada elemen sama dengan 'pisang' satu demi satu dan jika ia adalah sama, keluarkan kedudukan unsur.

Perlu diingatkan bahawa kaedah ini boleh mendapatkan nilai, kedudukan dan maklumat lain elemen tertentu, tetapi ia kurang cekap, terutamanya untuk tatasusunan yang besar, dan kerumitan masa adalah tinggi.

Kaedah 4: Gunakan fungsi array_reduce()

Fungsi array_reduce() boleh melakukan operasi pengurangan pada semua elemen tatasusunan dan merekodkan maklumat kedudukan setiap elemen pada masa yang sama, supaya elemen dalam tatasusunan yang memenuhi syarat dapat dikurangkan Unsur-unsur dan maklumat kedudukan disimpan sebagai tatasusunan, dan kemudian maklumat kedudukan sesuatu elemen diperolehi dengan melintasi tatasusunan.

Kod sampel:

$arr = array('apple', 'banana', 'orange', 'banana');
$posArr = array_reduce($arr, function($carry, $item) {
    static $pos = 0;
    if($item == 'banana') {
        $carry[] = $pos;
    }
    $pos++;
    return $carry;
}, array());
print_r($posArr);   // 输出 Array ( [0] => 1 [1] => 3 )
Salin selepas log masuk

Dalam contoh di atas, fungsi array_reduce() digunakan untuk memproses tatasusunan $arr, dan setiap elemen dinilai Jika elemen itu sama dengan 'pisang'. , kedudukan elemen direkodkan maklumat ke dalam tatasusunan $carry, dan akhirnya mengembalikan tatasusunan $carry.

Perlu diambil perhatian bahawa kaedah ini boleh dengan mudah mendapatkan tatasusunan semua kedudukan elemen yang memenuhi syarat, tetapi berbanding dengan gelung foreach(), kerumitan masa masih lebih tinggi untuk tatasusunan besar .

Ringkasnya, terdapat banyak cara untuk menentukan kedudukan elemen dalam tatasusunan dalam PHP Adalah penting untuk memilih kaedah yang sesuai mengikut situasi sebenar.

Atas ialah kandungan terperinci PHP menentukan elemen tatasusunan yang mana. 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