PHP数组数据结构图,PHP数组与数据结构

数组的英文是array,可以存入多个不同类型的数据,是一个复合数据类型。

eg:

$shu = array(1 , 1.5 , true ,'天王盖地虎,小鸡炖蘑菇');

echo '

';

var_dump($shu);

echo '

';

?>

在上例中,我们发现我们存入了:

1.整型

2.浮点

3.布尔

4.字符串

注:上例中echo pre这个标签的主要目的是为原样输出,格式展示的更好看,更清晰。

我们用var_dump()打印出来显示看一下效果:

注:

索引数组的下标必须要从0开始吗?

答:这个问题其实不然,索引数组并不一定要从0开始。

那如何能够不从0开始呢?

答:需要用到大家在上面学的一小块知识哟。就是键值对应符。我们来动手写写。

$kele = array('只有不断努力才能博得未来',10 => 'NoAlike', 'PHP中文网' , '去PHP中文网学PHP', 19 => '苹果和梨子我都爱' , '橘子我最爱');

//打印显示$kele

echo '

';

var_dump($kele);

echo '

';

?>

1.for循环遍历索引数组

//声明一个数组,值为1到10

$num = array(1,2,3,4,5,6,7,8,9,10);

//按照索引数组的特点,下标从0开始。所以1的下标为0,10的下标为9

echo $num[0].'
';

echo $num[9].'
';

//我们可以得到数组中元素的总个数,为10

echo count($num);

//遍历这个索引数组的话,我们就可以定义一个变量为$i

//$i 的值为0,从0开始

//可以设定一个循环条件为:$i 在下标的(9)最大值之内循环

for($i = 0 ; $i < count($num) ; $i++){

echo $num[$i].'
';

}

?>

通过上面的例子,我们就把数组进行了循环。

因为下标是从0开始的,定义

math?formula=i%3D0%20%E3%80%82%E6%AF%8F%E6%AC%A1%E5%BE%AA%E7%8E%AF%E7%9A%84%E6%97%B6%E5%80%99%E8%AE%A9i 加1 ,但是必须要小于10,因为数组下标的最大值为9。

2.常用操作数组函数

函数

功能

array_shift

弹出数组中的第一个元素

array_unshift

在数组的开始处压入元素

array_push

向数组的末尾处压入元素

array_pop

弹出数组末尾的最后一个元素

current

读出指针当前位置的值

key

读出指针当前位置的键

next

指针向下移

prev

向上移

reset

指针到开始处

end

指针到结束处

这些函数,也是面试中基础面试中最爱问到的问题。

函数名

功能

array_combine()

生成一个数组,用一个数组的值作为键名,另一个数组值作为值

range()

创建并返回一个包含指定范围的元素的数组。

compact()

创建一个由参数所带变量组成的数组

array_fill()

用给定的值生成数组

array_chunk()

把一个数组分割为新的数组块

array_merge()

把两个或多个数组合并为一个数组

array_slice()

在数组中根据条件取出一段值,并返回

array_diff()

返回两个数组的差集数组

array_search()

在数组中搜索给定的值,如果成功则返回相应的键名

array_splice()

把数组中的一部分去掉并用其它值取代

array_sum()

计算数组中所有值的和

in_array()

检查数组中是否存在某个值

array_key_exists()

检查给定的键名或索引是否存在于数组中

shuffle()

将数组打乱,保留键值

count()

计算数组中的单元数目或对象中的属性个数

array_flip()

返回一个键值反转后的数组

array_keys()

返回数组所有的键,组成一个数组

array_values()

返回数组中所有值,组成一个数组

array_reverse()

返回一个元素顺序相反的数组

array_count_values()

统计数组中所有的值出现的次数

array_rand()

从数组中随机抽取一个或多个元素,注意是键名

array_unique()

删除重复值,返回剩余数组

sort()

按升序对给定数组的值排序,不保留键名

rsort()

对数组逆向排序,不保留键名

asort()

对数组排序,保持索引关系

arsort()

对数组逆向排序,保持索引关系

ksort()

按键名对数组排序

krsort()

将数组按照键逆向排序

natsort()

用自然顺序算法对数组中的元素排序

natcasesort()

自然排序,不区分大小写

array_filter()

去掉数组中的空元素或者预定元素

extract

将键变为变量名,将值变为变量值

eg:弹出数组中的第一个元素

$mingren = array("邓超", "黄晓明", "宁泽涛", "钟汉良");

$dc = array_shift($mingren);

echo $dc .'
';

print_r($mingren);

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值