Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menentukan sama ada tatasusunan satu dimensi atau tatasusunan dua dimensi dalam PHP
Dalam PHP, anda boleh menggunakan fungsi count() untuk menentukan fungsi ini boleh mendapatkan panjang tatasusunan Jika anda meninggalkan parameter kedua, anda hanya akan mendapat bilangan elemen dalam satu dimensi , anda hanya perlu membandingkan parameter yang diabaikan Cuma pastikan panjang yang diperoleh adalah sama seperti apabila parameter tidak diabaikan, sintaksnya ialah "count($arr)== count($arr,1)".
Persekitaran pengendalian tutorial ini: sistem windows7, versi PHP7.1, komputer DELL G3
Dalam php, anda boleh gunakan fungsi count () untuk menilai.
<?php header('content-type:text/html;charset=utf-8'); $array = array("php", 11, '', 12, "PHP中文网",13,"green",2021,"mysql","14",15); if (count($array) == count($array, 1)) { echo '是一维数组'; } else { echo '是二维数组'; } ?>
Prinsip skema:
count ( mixed $var [, int $mode ] )
– Kira bilangan sel dalam tatasusunan atau dalam objek Bilangan atribut
$mode: ialah parameter pilihan dan boleh diabaikan.
Jika parameter $mode diabaikan, atau ditetapkan kepada COUNT_NORMAL atau 0, fungsi count() tidak akan mengesan tatasusunan berbilang dimensi
Jika Jika $mode ditetapkan kepada COUNT_RECURSIVE atau 1, fungsi count() akan mengira secara rekursif bilangan elemen dalam tatasusunan, yang amat berguna untuk mengira bilangan elemen dalam tatasusunan berbilang dimensi.
Jika parameter $mode diabaikan, count tidak akan mengesan tatasusunan berbilang dimensi dan hanya akan memperoleh bilangan elemen dalam satu dimensi.
Oleh itu, anda hanya perlu membandingkan sama ada panjang yang diperoleh apabila parameter $mode ditinggalkan dan apabila parameter $mode tidak ditinggalkan adalah sama untuk menentukan sama ada ia adalah tatasusunan satu dimensi atau dua- tatasusunan dimensi.
contoh parameter $mod:
<?php header("Content-type:text/html;charset=utf-8"); $arr= array ("张三", 25, array("高数","PHP教程","英语"), ); //输出语句 echo "数组长度为:".count($arr,1); echo "<br>不递归检测数组,长度为:".count($arr); ?>
Output:
数组长度为:6 不递归检测数组,长度为:3
Perhatikan perkara di atas Keluarkan keputusan Adakah anda keliru? Terdapat bukan sahaja 5 elemen dalam tatasusunan ("Zhang San", 25, "Gaoshu", "Tutorial PHP", "Bahasa Inggeris" Mengapakah panjang tatasusunan dipaparkan dalam hasil bukan 5 , tetapi bagaimana dengan 6?
Malah, ia adalah kerana pada masa ini, fungsi count() bergelung untuk mengira semua elemen dalam tatasusunan dua dimensi dan "array("高数","Tutorial PHP", "Bahasa Inggeris ")" akan dianggap sebagai statistik keseluruhan Sebaik sahaja, elemen di dalamnya ("Matematik Lanjutan", "Tutorial PHP", "Bahasa Inggeris") akan dikira sekali lagi, jadi keputusan akhir ialah 6.
Disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada tatasusunan satu dimensi atau tatasusunan dua dimensi dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!