Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menentukan sama ada tatasusunan ialah tatasusunan indeks dalam php

Bagaimana untuk menentukan sama ada tatasusunan ialah tatasusunan indeks dalam php

青灯夜游
青灯夜游asal
2022-09-20 20:23:291696semak imbas

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.

Bagaimana untuk menentukan sama ada tatasusunan ialah tatasusunan indeks dalam php

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 参数一起使用。可能的值:
  • true - 返回带有指定键值的键名。依赖类型,数字 5 与字符串 "5" 是不同的。
  • false - 默认值。不依赖类型,数字 5 与字符串 "5" 是相同的。
<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$arr=array("r"=>"red",2,3,"hello",5,6);
var_dump($arr);
$keys=array_keys($arr);
var_dump($keys);
?>

Bagaimana untuk menentukan sama ada tatasusunan ialah tatasusunan indeks dalam php

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

Bagaimana untuk menentukan sama ada tatasusunan ialah tatasusunan indeks dalam php

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(&#39;content-type:text/html;charset=utf-8&#39;);   
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);
?>

Bagaimana untuk menentukan sama ada tatasusunan ialah tatasusunan indeks dalam php

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!

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