会员登录 | 注册会员 | 学习交流 | 会员中心 | 在线充值 | QQ在线咨询
扫一扫添加微信咨询
咨询电话:199-4385-7008
在线客服:
本站主要提供AICS6、PSCS6、CDRX6、DWCS6、html、CSS样式、js脚本、ASP、PHP等视频教程,近期隆重推出平面设计、网页设计视频教程套装,在线学习结合视频光盘/U盘,是您成为设计大师的必经之路!
您所在的位置:首页 >> 程序开发 >> PHP网站开发 >> php网站开发15:常用php操作数组的函数

程序开发

讲师:赵老师[简介] 已录课程:120讲 【本课程讨论区】

php网站开发15:常用php操作数组的函数

在线QQ:3316841367 客服电话:199-4385-7008

您还不是vip会员或者没有登录,无法进入学习,请登录后访问或者联系站长升级会员等级!
为了能给大家提供更好的服务和视频教程,本站VIP课程需要收取一定的学费,具体收费标准根据不同的班级课程和有效期长短有所不同,具体请咨询在线老师,多谢您对本站的支持!

【注册会员】 | 【如何开通VIP会员】 | 【学习点卡充值】

php网站开发15:常用php操作数组的函数

3、常用php数组函数

compact()函数

compact()函数用于将两个或多个变量转换为数组,当然也包含数组变量。其参数是变量的名称而非带有$全名。
相反的函数是extract()作用顾名思义就是将数组转换为单个的字符串,键值作为其字符串名称,数组值作为字符串的值。

例如:$newArray = compact("number","string","array");

array_combine()——将两个数组重组成一个数组,一个作键值一个做的值:array

array_combine (array $keys , array $values )
例如:
< ?PHP
$number = array("1","3","5","7","9");
$array = array("I","Am","A","PHP","er");
$newArray = array_combine($number,$array);
print_r ($newArray);
?>

range()函数——创建指定范围的数组:

例如:
< ?PHP
$array1 = range(0,100,10);//0为起始值,100为结束值,10为步进值(默认步进值为1).
?>

array_fill()函数——填充数组函数:
例如:
< ?PHP
$array = range(1,10);
$fillarray = range("a","d");
$arrayFilled = array_fill(0,5,$fillarray);//这里的$fillarray可以是字符串.
?>

foreach遍历
foreach (array_expression as $value){}
foreach (array_expression as $key => $value){}
例如:
< ?PHP
$speed = array(50,120,180,240,380);

foreach($speed as $keys=>$values){
echo $keys."=>".$values."<br />";
}
?>

for循环遍历
例如:<?PHP
$speed = range(0,220,20);
for($i =0;$i<count($speed);$i++) {
echo $speed[$i]." ";
}
?>

array_pad函数,数组数组首尾选择性追加
< ?PHP
$num = array(1=>80,2=>120,3=>160);
$num = array_pad($num,4,200);
echo "使用array_pad函数向数组尾部添加成员<br />";
print_r($num);
echo "<br />array_pad 还可以填充数组首部<br />";
$num = array_pad($num,-8,40);
print_r($num);
?>

array_push()函数——入栈操作追加(array_push),直接在数组结尾添加元素
例如:
< ?PHP
$num = array(1=>80,2=>120,3=>160);
array_push($num,200,240,280);//可以自己追加,直接加在数组结尾
?>

array_unshift()在开头添加数组成员,array_unshift()函数使用后数组键值会从0开始!

<?PHP
$num = array(1=>80,2=>120,3=>160);
array_unshift($num,0,40);//可以自己追加,直接加在数组结尾
print_r($num);
?>

unset()命令删除数组成员或数组

<?PHP
$num = array_fill(0,5,rand(1,10));
print_r($num);
echo "<br />";
unset($num[4]);
print_r($num);
echo "<br />";
unset($num);
if(is_array){
echo "unset命令不能删除整个数组";
}else{
echo "unset命令可以删除数组";
}
?>

array_splice()函数删除数组成员
例如:<?php
$a=array("red", "green", "blue", "yellow");
count ($a); //得到4
array_splice($a,1,1); //删除第二个元素
count ($a); //得到3
echo $a[2]; //得到yellow
echo $a[1]; //得到blue
?>

array_unique删除数组中的重复值:
例如:
< ?php
$a=array("red", "green", "blue", "yellow","blue","green");
$result = array_unique($a);
print_r($result);
?>

array_merge、array_merge_recursive合并数组

注:1. array_merge的键名是数字的将重新建立索引;遇到相同的字符串键名时,后面的将覆盖前面的。
2. array_merge_recursive函数的作用是将相同字符串的键名单元整合成一个数组。

例如:<?php
$array1 = array("r"=>"red",1,2,3,4);
$array2 = array("b"=>"blue",4=>5,6,7,8,9);
$array3 = array("r"=>"read",4=>10,2=>11);
$array4 = array(
array(4=>10),
array(7=>13)
);
$array5 = array(
array(4=>11),
array(6=>12)
);
$result = array_merge($array1,$array2,$array3,$array4,$array5);
echo "<pre>";
print_r($result);
echo "</pre>";
$result = array_merge_recursive($array1,$array2,$array3,$array4,$array5);
echo "<pre>";
print_r ($result);
echo "</pre>";
?>

in_array()检测数组中是否有某个值存在
例如:
< ?php
$array = range(0,9);
if(in_array(9,$array)){
echo "数组中存在";
}
?>

key()取得数组当前的键名
list()函数把数组中的值赋给指定变量
array_flip()交换数组的键值和值
array_search()搜索数值

sort()、rsort()/asort()、arsort()对数组排序
sort()、rsort()函数对数组进行从低到高的排序,返回结果为bool值;
asort()、arsort()函数是保留键值的排序,排序后键值不重新索引

将数组顺序打乱——shuffle()函数
array_reverse()数组反向
自然排序算法——natsort()和natcasesort();
对数组进行键值排序ksort()
cout($array) ——统计数组的单元个数
array_diff($array1,$array2)——统计数组之间的不同点,返回第一个数组中有而第二个数组中没有的。
array_diff_assoc($array1,$array2)——同array_diff(),只是它对键值也比较
array_diff_key($array1,$array2)——比较键值
array_product($array)——返回数组的所有数的乘积
array_sum($array)——所有数值的和
array_rand($array,$n)——在$array数组中取出$n个数值,返回数组
array_intersect($array1,$array2)——取得两个数组的交集
array_intersect_assoc($array1,$array2)——在array_intersect 的基础上进行键值比较
array_intersect_key($array1,$array2)——比较两个数组键值的交集

上一讲:php网站开发14:php分割字符串到数组   |   下一讲:php网站开发16:php中的算术运算符

如果您对本课程有什么评价或建议,欢迎分享!
* 标 题: 发布人:
* 咨询内容:
是否同步: 同步到交流中心

客服热线(8:00-23:00)

133 4385 7008

在线QQ客服:3316841367 张老师
微信账号:laozhangsoft123

微信公众号