Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Cekap Mencari Objek dengan IDnya dalam Susunan Objek?

Bagaimana untuk Cekap Mencari Objek dengan IDnya dalam Susunan Objek?

Linda Hamilton
Lepaskan: 2024-11-28 05:43:09
asal
438 orang telah melayarinya

How to Efficiently Find an Object by its ID in an Array of Objects?

Mencari Objek mengikut Harta dalam Susunan Objek

Memandangkan tatasusunan objek di mana setiap objek mempunyai sifat "ID", kami perlu mengenal pasti dan mendapatkan semula objek yang sepadan dengan nilai khusus untuk sifat ID. Mari kita pertimbangkan tatasusunan bernama $array dengan objek yang mempunyai sifat "ID" dan "nama".

Untuk mendekati masalah ini, terdapat dua strategi biasa:

1. Lelaran Tatasusunan:

Ini melibatkan gelung melalui setiap objek dalam tatasusunan dan menyemak sama ada sifat "ID"nya sepadan dengan nilai yang dikehendaki. Pendekatan ini mudah tetapi boleh menjadi tidak cekap untuk tatasusunan yang besar.

$item = null;
foreach ($array as $struct) {
    if ($v == $struct->ID) {
        $item = $struct;
        break;
    }
}
Salin selepas log masuk

2. Penciptaan Peta Hash:

Kita boleh mencipta peta hash yang menggunakan sifat "ID" sebagai kunci dan objek sebagai nilai. Ini membolehkan kami mengakses objek yang diingini secara langsung berdasarkan IDnya.

$hashmap = [];
foreach ($array as $struct) {
    $hashmap[$struct->ID] = $struct;
}

$item = $hashmap[$v];
Salin selepas log masuk

Jika prestasi membimbangkan, pendekatan penciptaan peta cincang biasanya lebih disukai untuk tatasusunan besar. Walau bagaimanapun, untuk tatasusunan kecil, kesederhanaan lelaran tatasusunan mungkin lebih sesuai.

Atas ialah kandungan terperinci Bagaimana untuk Cekap Mencari Objek dengan IDnya dalam Susunan Objek?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan