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

Adakah tatasusunan dua dimensi php mengandungi tatasusunan satu dimensi?

PHPz
PHPzasal
2023-05-05 20:59:06508semak imbas

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")
);

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>";
}

Hasil pelaksanaan adalah seperti berikut:

apple orange banana 
dog cat bird 
red green blue 

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)

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;
}

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"; }

Hasil pelaksanaan ialah:

存在Array
不存在Array

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!

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
Artikel sebelumnya:penukaran format php jsonArtikel seterusnya:penukaran format php json