【PHP】数组和常用数组函数

数组


1、创建数组

PHP数组使用 array() 函数创建。

<?php
$arr1 = array(1,23,12,21,10);
$arr2 = array('cat','dog','pandar','mokey');

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

<?php
// 索引数组
$arr1 = array(1,45,23,4);
// 关联数组
$arr2 = array('name'=>'zhangsan','age'=>'18');
// 多维数组
$arr3 = array(
	0=>array('name'=>'zhangsan','age'=>'18'),
	1=>array('name'=>'wangwu','age'=>'17')
);
2、遍历数组

1.1、索引数组遍历
使用 for 循环遍历索引数组。

<?php
$arr = array('cat','pig','dog','fish');
$length = count($arr);
for($i=0;$i<$length;$i++){
	echo $arr[$i];
	echo '<br/>';
}

数组遍历后:
cat
pig
dog
fish
2.2、关联数组遍历
使用 foreach 循环遍历关联数组。

<?php
$arr = array(
	'name' => '张三',
	'sex' => '男',
	'age' => 20
);
foreach($arr as $key=>$value){
	echo 'key=' . $key .',value=' . $value;
	echo '<br/>';
}

数组遍历后:
key=name,value=张三
key=sex,value=男
key=age,value=20

常用数组函数


1、count() 函数

返回数组中元素的个数。
1.1、语法
count(array,mode)

参数描述
array必需。规定数组
mode可选。0-默认,不对多维数组计数 ;1-递归地计数数组中元素的数目(计算多维数组中的所有元素)

说明:返回数组元素的数目。
1.2、示例

<?php
$arr = array(1,2,4,5,32,12,56,678,54);
echo count($arr); // 9
$darr = array(
	0 => array(3,21,45,5),
	1 => array(23,6,2),
	2 => array(234,56,21,60,98)
);
echo count($darr); // 3
echo count($darr,1); // 15

一般情况下,第二个参数都会是默认。

2、in_array() 函数

搜索数组中是否存在指定值。
2.1、语法
in_array(search,array)

参数描述
search必需,固定指定值
array必需,规定搜索的数组

说明:数组存在指定值返回 true,不存在返回 flase。
2.2、示例

<?php
$names = array('zhangsan','lisi','wangwu','zhaoliu');
if(in_array('zhangsan',$names)){
	echo 'zhangsan 在数组中'; 
}
// zhangsan 在数组中
if(in_array('suwu',$names)){
	echo 'suwu 在数组中';
} else {
	echo 'sunwu 不在数组中';
}
// sunwu 不在数组中
3、array_combine() 函数

将两个数组合并成一个新数组,其中一个数组作为键名,另一个作为键值。
3.1、语法
array_combine(keys,values)

参数描述
keys必需,键名数组
values必需,键值数组

说明: 返回重新组合的新数组。
注释: 键名数组和键值数组的元素个数必须相同!
如果其中一个数组为空,或者两个数组的元素个数不同,则该函数返回 false。
3.2、示例

<?php
$names = array('Tom','Jerry','Jhon');
$ages = array(10,11,20);
$newarr = array_combine($names,$ages);
print_r($newarr);
/*
Array
(
    [Tom] => 10
    [Jerry] => 11
    [Jhon] => 20
)
*/
4、array_merge() 函数

把一个或多个数组合并为一个数组。
4.1、语法
array_merge(array1,array2,array3,…)

参数描述
array1必需。规定数组
array2可选。规定数组

说明:返回合并的新数组。
4.2、示例

<?php
$arr1 = array(12,3,42,56,43);
$arr2 = array('sd','swe','qwes','vfg','gbf','rtgk');
print_r(array_merge($arr1,$arr2));
/*
Array
(
    [0] => 12
    [1] => 3
    [2] => 42
    [3] => 56
    [4] => 43
    [5] => sd
    [6] => swe
    [7] => qwes
    [8] => vfg
    [9] => gbf
    [10] => rtgk
)
*/
5、array_values() 函数

返回一个数组所有键值的数组。
5.1、语法
array_values(array)

参数描述
array必需。规定数组

5.2、示例

<?php
$arr = array('name'=>'zhaoliu','age'=>20,'city'=>'beijing');
print_r(array_values($arr));
/*
Array
(
    [0] => zhaoliu
    [1] => 20
    [2] => beijing
)
*/
6、sort() 函数

把数组元素按升序排序。
6.1、语法
sort(array)

参数描述
array必需。规定数组

注释: 本函数为数组中的单元赋予新的键名。原有的键名将被删除。
成功返回 true,失败返回 false。
6.2、示例

<?php
$arr = array(21,3,45,12,9);
var_dump(sort($arr)); // bool(true)
print_r($arr);
/*
Array
(
    [0] => 3
    [1] => 9
    [2] => 12
    [3] => 21
    [4] => 45
)
*/

更多PHP 数组函数请点击:php array 函数

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值