Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menentukan sama ada tatasusunan ialah tatasusunan indeks dalam php
Langkah-langkah penghakiman: 1. Gunakan array_keys() untuk mendapatkan semua nama kunci tatasusunan asal, sintaksnya ialah "array_keys(array)"; 2. Gunakan array_filter() untuk menapis tatasusunan, sintaksnya ialah "function f($v){return (is_string($v));}$res=array_filter($keys,"f");" akan mengembalikan tatasusunan penapis yang mengandungi elemen rentetan 3. Tentukan sama ada tatasusunan penapis ialah tatasusunan kosong, dan jika ia kosong, tatasusunan ialah tatasusunan indeks.
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer DELL G3
Dalam php, subskrip indeks tatasusunan ( Nama kunci) terdiri daripada nombor Jika nama kunci dalam tatasusunan bukan nombor, maka tatasusunan itu ialah tatasusunan bersekutu (bukan tatasusunan indeks).
Oleh itu, anda hanya perlu menentukan sama ada nama kunci tatasusunan adalah semua nombor untuk menentukan sama ada tatasusunan ialah tatasusunan indeks.
Langkah pelaksanaan:
Langkah 1: Gunakan fungsi array_keys() untuk mendapatkan semua nama kunci tatasusunan asal
array_keys( ) fungsi mengembalikan tatasusunan baharu yang mengandungi semua kunci dalam tatasusunan.
array_keys(array,value,strict)
参数 | 描述 |
---|---|
array | 必需。规定数组。 |
value | 可选。您可以指定键值,然后只有该键值对应的键名会被返回。 |
strict | 可选。与 value 参数一起使用。可能的值:
|
<?php header('content-type:text/html;charset=utf-8'); $arr=array("r"=>"red",2,3,"hello",5,6); var_dump($arr); $keys=array_keys($arr); var_dump($keys); ?>
Langkah 2: Gunakan fungsi array_filter() dan is_string() untuk menapis tatasusunan dan mengembalikan rentetan dalam kunci Elemen tatasusunan
function f($v){ return(is_string($v)); } $res=array_filter($keys,"f"); var_dump($res);
akan mengembalikan tatasusunan ditapis yang mengandungi elemen rentetan
Langkah 3: Tentukan sama ada tatasusunan yang ditapis kosong Tatasusunan
$res==[]
Jika kosong, tatasusunan ialah tatasusunan diindeks
Jika tidak kosong, tatasusunan itu bukan terindeks array , ialah tatasusunan bersekutu
Kod pelaksanaan:
<?php header('content-type:text/html;charset=utf-8'); function f($v){ return(is_string($v)); } function fun($arr){ $keys=array_keys($arr); $res=array_filter($keys,"f"); if($res==[]){ echo "数组是索引数组<br>"; }else{ echo "数组不是索引数组,是关联数组<br>"; } } $arr=array("r"=>"red",2,3,"hello",5,6); var_dump($arr); fun($arr); $arr=array(1,2,3,"hello",5,6); var_dump($arr); fun($arr); ?>
Kajian yang disyorkan: " Tutorial video PHP》
Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada tatasusunan ialah tatasusunan indeks dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!