Rumah > pembangunan bahagian belakang > masalah PHP > Adakah tatasusunan dua dimensi php mengandungi tatasusunan satu dimensi?

Adakah tatasusunan dua dimensi php mengandungi tatasusunan satu dimensi?

PHPz
Lepaskan: 2023-05-05 20:59:06
asal
514 orang telah melayarinya

Apabila pengaturcaraan dalam PHP, penggunaan tatasusunan selalunya terlibat. Tatasusunan boleh dikatakan sebagai salah satu jenis data yang paling penting dan asas dalam PHP, yang membolehkan kami merujuk berbilang item data dengan satu nama pembolehubah. Dalam tatasusunan, tatasusunan dua dimensi ialah bentuk biasa struktur data Ia mengandungi berbilang tatasusunan sebagai elemen dan digunakan untuk menyatakan struktur data yang lebih kompleks. Apabila berurusan dengan tatasusunan dua dimensi, kita sering menghadapi masalah ini: Bagaimana untuk menentukan sama ada tatasusunan dua dimensi mengandungi tatasusunan satu dimensi?

Apakah tatasusunan dua dimensi?

Dalam PHP, tatasusunan dua dimensi merujuk kepada tatasusunan yang mengandungi berbilang tatasusunan ini boleh dianggap sebagai matriks dan setiap tatasusunan sepadan dengan baris atau lajur. Kita boleh mentakrifkan tatasusunan dua dimensi melalui kod berikut:

$arr = array(
    array("apple", "orange", "banana"),
    array("dog", "cat", "bird"),
    array("red", "green", "blue")
);
Salin selepas log masuk

Tatasusunan dua dimensi $arr ini terdiri daripada 3 tatasusunan satu dimensi, setiap tatasusunan satu dimensi mengandungi 3 elemen. Kita boleh melintasi setiap elemen dalam tatasusunan dua dimensi melalui gelung berganda, seperti yang ditunjukkan di bawah:

for ($i = 0; $i < count($arr); $i++) {
    for ($j = 0; $j < count($arr[$i]); $j++) {
        echo $arr[$i][$j] . " ";
    }
    echo "<br>";
}
Salin selepas log masuk

Hasil pelaksanaan adalah seperti berikut:

apple orange banana 
dog cat bird 
red green blue 
Salin selepas log masuk

Bagaimana untuk menentukan sama ada tatasusunan dua dimensi mengandungi tatasusunan satu dimensi?

Dalam pembangunan sebenar, kita mungkin perlu menapis atau menapis elemen secara bersyarat dalam tatasusunan dua dimensi. Jika terdapat tatasusunan satu dimensi, kita perlu menentukan sama ada ia terkandung dalam tatasusunan dua dimensi Kita boleh menggunakan fungsi in_array() dalam PHP untuk menentukan. Fungsi

in_array() boleh menentukan sama ada nilai yang diberikan wujud dalam tatasusunan Formatnya adalah seperti berikut:

in_array($needle, $haystack, $strict)
Salin selepas log masuk

di mana $needle ialah nilai yang akan ditemui dan $haystack ialah tatasusunan untuk. dapat ditemui. $strict ialah parameter pilihan, menunjukkan sama ada mod ketat dihidupkan Jika ia tidak dihidupkan, hanya nilai elemen yang akan dipadankan, bukan jenisnya.

Kita boleh menggunakan kod berikut untuk menentukan sama ada tatasusunan satu dimensi wujud dalam tatasusunan dua dimensi:

function search_arr($arr, $search) {
    foreach ($arr as $key => $value) {
        if (in_array($search, $value)) {
            return true;
        }
    }
    return false;
}
Salin selepas log masuk

Dalam kod ini, fungsi search_arr() menerima dua parameter, $arr ialah tatasusunan dua Dimensi, $search ialah tatasusunan satu dimensi untuk dicari. Kami menggunakan gelung foreach untuk merentasi setiap tatasusunan satu dimensi dalam tatasusunan dua dimensi, dan kemudian gunakan fungsi in_array() dalam setiap tatasusunan satu dimensi untuk mencari tatasusunan satu dimensi yang diperlukan , jika tidak ia mengembalikan palsu.

Kod sampel adalah seperti berikut:

$arr = array(
    array("apple", "orange", "banana"),
    array("dog", "cat", "bird"),
    array("red", "green", "blue")
);

$search1 = array("apple", "orange", "banana");
$search2 = array("cat", "dog", "bird");

if (search_arr($arr, $search1)) {
    echo "存在$search1";
} else {
    echo "不存在$search1";
}

echo "
"; if (search_arr($arr, $search2)) { echo "存在$search2"; } else { echo "不存在$search2"; }
Salin selepas log masuk

Hasil pelaksanaan ialah:

存在Array
不存在Array
Salin selepas log masuk

Melalui fungsi carian search_arr(), kita boleh menentukan sama ada tatasusunan satu dimensi wujud dalam tatasusunan dua dimensi.

Ringkasan

Dalam PHP, tatasusunan dua dimensi ialah bentuk biasa struktur data yang mengandungi berbilang tatasusunan sebagai elemen untuk menyatakan struktur data yang lebih kompleks. Jika kita perlu menentukan sama ada tatasusunan satu dimensi terkandung dalam tatasusunan dua dimensi, kita boleh menggunakan fungsi in_array() untuk menentukan. Dalam pembangunan sebenar, menggunakan tatasusunan dua dimensi dan fungsi in_array() boleh mengendalikan struktur data dengan lebih baik dan melaksanakan operasi seperti penapisan dan penapisan data.

Atas ialah kandungan terperinci Adakah tatasusunan dua dimensi php mengandungi tatasusunan satu dimensi?. 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