php常用数组函数小结
count函数
作用:计算数组中元素的个数或对象的属性个数
返回值:
- 数组或者对象, 返回数组的单元个数或者对象的属性个数
- Null,返回0
- 非数组,也非NULL,通通返回1
<?php
$arr=array('春','夏','秋','冬');
echo count($arr);//4
echo '<br/>';
$str='false';
echo count($str);//1
echo '<br/>';
$res=null;
echo count($res);//0
echo "<br/>";
$arr=array('春','夏','秋','冬',array('a','b','c'));
echo count($arr),'<br/>';//5
echo count($arr,1),'<br/>';//第2个参数为1时,代表递归的来计算数组的单元个数
$arr=array('春','夏','秋','冬',array('a',array('b','c')));
echo count($arr,1),'<br/>';
?>
range函数
作用:建立一个包含指定范围单元的数组
返回值:返回的数组中从 start 到 limit 的单元,包括它们本身。
<?php
$arr=range(0,20);
foreach($arr as $v){
echo $v.'<br/>';
}
$arr=range(0,20,2);
foreach($arr as $k=>$v){
echo $k.'###'.$v.'<br/>';
}
?>
array_flip函数 array array_flip ( array $trans )
作用:交换键值
参数:array $trans 要交换键/值对的数组。
返回值:成功时返回交换后的数组,如果失败返回 NULL。键值对调后,出现2个相同的键,后面的会覆盖前面的键
<?php
$arr=array('a'=>1,'b'=>2,'c'=>3);
print_r($arr);//Array ( [0] => a [1] => b [2] => c )
print_r(array_flip($arr));//Array ( [a] => 0 [b] => 1 [c] => 2 )
?>
array_sum函数 number array_sum ( array $array )
作用:计算数组中所有值的和,将数组中的所有值的和以整数或浮点数的结果返回。
参数:array 输入的数组。
返回值:所有值的和以整数或浮点数的结果返回
<?php
$arr=range(1,100);
print_r($arr);
echo array_sum($arr);
?>
shuffle函数 bool shuffle ( array &$array )
作用: 将数组打乱
参数:array 待操作的数组
返回值:成功时返回 TRUE, 或者在失败时返回 FALSE。该函数是引用传值
<?php
$arr=range(1,100);
print_r($arr);
echo array_sum($arr);
if(shuffle($arr)){
echo '打乱成功';
print_r($arr);//
}
?>
array_reverse函数 array array_reverse ( array $array [, bool $preserve_keys = false ] )
作用:接受数组 array 作为输入并返回一个单元为相反顺序的新数组。
参数:array 输入的数组。preserve_keys 如果设置为 TRUE 会保留数字的键。 非数字的键则不受这个设置的影响,总是会被保留。
返回值:返回反转后的数组。
<?php
$arr = array('a'=>'春','b'=>'夏','c'=>'秋','d'=>'冬');
print_r($arr); //Array ( [a] => 春 [b] => 夏 [c] => 秋 [d] => 冬 )
print_r(array_reverse($arr)); //Array ( [d] => 冬 [c] => 秋 [b] => 夏 [a] => 春 )
$arr = array('春','夏','秋','冬');
print_r($arr);
print_r(array_reverse($arr));
print_r(array_reverse($arr,true));
?>
array_push函数 int array_push ( array &$array , mixed $var [, mixed $... ] )
作用:将一个或多个单元压入数组的末尾(入栈)
参数:array 输入的数组。 var 要压入的值。
返回值:返回处理之后数组的元素个数。
<?php
$stack = array("orange", "banana");
array_push($stack, "apple", "raspberry");
print_r($stack);
?>
array_pop函数 mixed array_pop ( array &$array )
作用:将数组最后一个单元弹出(出栈)
参数:array 需要做出栈的数组。
返回值:返回 array 的最后一个值。如果 array 是空(如果不是一个数组),将会返回 NULL 。
<?php
$stack = array("orange", "banana", "apple", "raspberry");
$fruit = array_pop($stack);
print_r($stack);
?>
array_shift函数 mixed array_shift ( array &$array )
作用:将数组开头的单元移出数组
参数:array 输入的数组。
返回值:返回移出的值,如果 array 为 空或不是一个数组则返回 NULL。
<?php
$stack = array("orange", "banana", "apple", "raspberry");
$fruit = array_shift($stack);
print_r($stack);
?>
array_unshift函数 int array_unshift ( array &$array , mixed $var [, mixed $... ] )
作用:在数组开头插入一个或多个单元
参数:array 输入的数组。 var 开头插入的变量。
返回值:返回 array 数组新的单元数目。
<?php
$queue = array("orange", "banana");
array_unshift($queue, "apple", "raspberry");
print_r($queue);
?>
explode函数 array explode ( string $delimiter , string $string [, int $limit ] )
作用:此函数返回由字符串组成的数组,每个元素都是 string 的一个子串,它们被字符串 delimiter 作为边界点分割出来
返回值:返回由字符串组成的 array,每个元素都是 string 的一个子串,它们被字符串 delimiter 作为边界点分割出来。
<?php
$str = 'abc,中国,美国,日本';
$arr = explode(',',$str);
print_r($arr);//Array ( [0] => abc [1] => 中国 [2] => 美国 [3] => 日本 )
?>
implode函数 string implode ( string $glue , array $pieces )或者string implode ( array $pieces )
作用:将一个一维数组的值转化为字符串
参数:glue 默认为空的字符串。 pieces 你想要转换的数组。
返回值:返回一个字符串,其内容为由 glue 分割开的数组的值。
<?php
$str = 'abc,中国,美国,日本';
$arr = explode(',',$str);
print_r($arr);
$arr = explode(',',$str);
echo implode('~',$arr),'<br />';
echo implode($arr);
?>
php常用数组函数小结的更多相关文章
- php常用数组函数回顾一
数组对于程序开发来说是一个必不可少的工具,我根据网上的常用数组函数,结合个人的使用情况,进行数组系列的总结复习.里面当然不只是数组的基本用法,还有相似函数的不同用法的简单实例,力求用最简单的实例,记住 ...
- php常用字符串函数小结
php内置了98个字符串函数(除了基于正则表达式的函数,正则表达式在此不在讨论范围),能够处理字符串中能遇到的每一个方面内容,本文对常用字符串函数进行简单的小结,主要包含以下8部分:1.确定字符串长度 ...
- PHP常用数组函数
一.数组操作的基本函数 数组的键名和值 array_values($arr); 获得数组的值 array_keys($arr); 获得数组的键名 array_flip($arr); 数组中的 ...
- PHP常用数组函数介绍
array_splice() 删除数组中的指定元 array_splice(数组名,从前往后删的个数,new一个数组的大小);没有第三参数也就没有返数组,没有第三个参数时,第二个参数的意义为从前往后保 ...
- php中的常用数组函数(八) 排序函数汇总(sort、rsort、usort、asort、uasort、arsort、ksort、uksort、krsort、natsort、natcasesort、array_multisort)
测试环境:php5.3.29 sort_flags 可以用以下值改变排序的行为: 排序类型标记: SORT_REGULAR - 正常比较单元(不改变类型) SORT_NUMERIC - 单元被作为数字 ...
- php中的常用数组函数(七) 数组合并 array_merge()和array_merge_recursive()
$arr1 = array(1, 2, 3, 4, 'color'=>'red'); $arr2 = array('a', 'b', 'c', 'color'=>'blue'); prin ...
- php中的常用数组函数(三)(获取数组交集的函数们 array_intersect()、array_intersect_key()、array_intersect_assoc()、array_intersect_uassoc()、array_intersect_ukey())
这5个获取交集的函数 有 5个对应的获取差集的函数.我是链接. array_intersect($arr1, $arr2); //获得数组同键值的交集 array_intersect_key($arr ...
- php中的常用数组函数(二)(数组元素过滤 array_filter())
array_filter($arr, 'filter_func'); //参数1,要过滤的数组 //参数2,过滤的函数,返回false时,不添加这个元素,返回true添加这个元素. 示例代码: /** ...
- php中的常用数组函数(一)(比较多个数组的差集的函数们 array_diff_assoc() array_diff() array_diff_key() array_diff_ukey() array_diff_uassoc())
array_diff_assoc($arr1, $arr2, $arr3,... n); 返回:一个$arr1的副本,后续的数组中出现一个键值相同的元素,就在副本中删掉这个元素,最后返回这个副本. 如 ...
随机推荐
- 0027 Java学习笔记-面向对象-(非静态、静态、局部、匿名)内部类
内部类 内部类就是把一个类写在另一个类的内部 用途: 如果一个类只希望它被某一个类访问,那么可以把它定义在另一个类的内部,并用private修饰 内部类可以访问它所在外部类的private成员:但所在 ...
- Fedora 23安装配置mysql数据库,修改初始密码及登陆
下载MySQL5.7.9 yum仓库 wget http://dev.mysql.com/get/mysql57-community-release-fc23-7-noarch.rpm rpm -iv ...
- NGUI 指定视口大小
由于只是给Uinty开发插件,对Unity没有系统的学习,对Unity的很多功能都不是非常了解,幸得其他Unity同事的耐心教导,才不至于想崩头.记录一下,避免重复犯错. NGUI可以建立指定视口大小 ...
- iOS 10 的坑:新机首次安装 app,请求网络权限“是否允许使用数据”(转)
症状 iOS 10 之后,陆陆续续地有用户联系我们,说新机第一次安装.第一次启动的时候,app 首屏一片空白,完全没数据.kill 掉重新打开就好了. 一开始以为是用户网络情况不好,但随着越来越多的用 ...
- 关于Thinkcmf中热门文章的使用
今天在做一个首页新闻列表页面的功能时候,因为要读取大量的新闻内容列表.如果每条数据都要从数据按照文章id和term_id来对应取值,无疑是很痛苦的. 然而机智如我,发现cmf框架中热门文章的用法: 在 ...
- java中设置代理的两种方式
1 前言 有时候我们的程序中要提供可以使用代理访问网络,代理的方式包括http.https.ftp.socks代理.比如在IE浏览器设置代理. 那我们在我们的java程序中使用代理呢,有如下两种方式. ...
- redis配置文件redis.conf中文版
转账自:http://www.jb51.net/article/50605.htm # Redis示例配置文件 # 注意单位问题:当需要设置内存大小的时候,可以使用类似1k.5GB.4M这样的常见格式 ...
- MVVM中数据验证之 ViewModel vs. Model
MMVM模式示意图. View绑定到ViewModel,然后执行一些命令在向它请求一个动作.而反过来 ...
- BI建模原则和常见问题
BI建模的质量直接影响数据仓库项目的质量,所以在建模前,要对数据仓库的架构组成.大小以及模型功能有明确的定义. 影响BI数据仓库建模的因素众多,往往会随着项目的具体情况不同而变化.但有些原则是相通的, ...
- ZBrush中该如何调节多个SubTool
我们学习了人体的基本雕刻,了解了人体结构.比例.骨骼.肌肉对于人物模型雕刻的重要性.本节课对ZBrush中的"Transpose Master"功能进行讲解,这个插件是ZBrush ...