您的位置:

php获取数组索引,php数组查找函数

本文目录一览:

PHP取得数组中的所有索引

希望我的回答是准确的

1.全等比较的意思是检查数据类型,比如有这么一个数组:$a1 = array(10,20,30,"10"),如果你array_keys($a1,"10",false),则会返回两个值,因为在数组中存在一个int和一个string,最终值都是10;但是如果第三个参数设置为true,那么会判断查询的值的类型是否存在于数组中,这时候返回值就不同了。可以亲自尝试一下

2.关于索引的这个例子,PHP中的数组都是有索引的,如果你没有加索引,那么默认会给你加上。

例如:

$arr2=array(

'sunday',

'saturday',

'monday',

'sunday',

'sunday',

);

这种写法是缩减的,它完整的写法应该是

$arr2=array(

0 = 'sunday',

1 = 'saturday',

2 = 'monday',

3 = 'sunday',

4 = 'sunday',

);

这样。array_keys找出所有此数组中的键值,那么如果不带参数,则会返回0,1,2,3,4这样的。而返回值又是一个数组,所以PHP把返回的键值存放在一个数组中。这样你就会混乱。这个例子不好,我们举另外一个例子:

比如现在有个数组:

$a = array(

'id' = 1,

'name' = wang,

'image' = 'touxiang.jpg'

);

那么,array_keys返回的结果应该是

array(

0 = 'id',

1 = 'name',

2 = 'image'

)

因为你取出键值时PHP会默认存为一个数组,所以会产生某个数组键值的键值,但是这个键值只是默认加上的,是PHP的数组特性,并不需要特别关心。

php 数组索引值如何重新从0开始递增

对于索引数组,php还有提供了另外一个内置函数,能够重置数组索引 array_merge($arr) ,当array_merge()只传入一个参数且键名是整数,返回该数组,其键名以0开始进行重新索引。

其中PHP中的数组实际上是一个有序映射。映射是一种把values关联到keys的类型。换言之,数组是特殊的变量,可以同时保存一个以上的值。

在PHP中数组类型有三种:索引数组(带有数字索引的数组),关联数组(带有指定键的数组),多维数组(包含一个或多个数组的数组)。

扩展资料:

注意事项:

1、两个相同的索引数组,同时执行,后面的会把前面的覆盖掉。

2、在php中 索引数组的下标可以不连续。

3、如果两个下标是空会自动增加。

4、数组的自动增长下标,默认是从0开始的,自动增长的都是出现过的最大值加1。

5、关联数组不会影响到索引数组的排序规则,就算是索引数组是负数 也不会影响,最大值+1。

参考资料来源:百度百科-索引数组

参考资料来源:百度百科-php数组

php数组怎样根据值得到索引

用array_search()搜索键值,返回键名(索引),如果同一个值出现多次,那么返回第一次出现时的键名(索引).

?php

$a=array(3,4,5,4,7,3);

$s=array_search('4',$a);

echo $s;//

?