第4章 数据处理-php数组的处理-郑阿奇


Posted in PHP onJuly 04, 2011

1. 数组的处理:

数组的创建和初始化:

arrary()函数创建数组,默认情况下0元素是数组的第一个元素,count()sizeof()函数获得数据元素的个数

2. 使用变量建立数组

compact()在当前的符号表中查找该变量名并将它添加到输出的数组中,变量名成为键名而变量的内容成为该键的值.

<?php 
$num=10; 
$str="string"; 
$array=array(1,2,3); 
$newarray=compact("num","str","array"); 
print_r($newarray); 
/*结果 
array([num]=10 [str]=---->string [array]=&gt;array([0]=&gt;1 [1]=&gt;2 [2]=&gt;3)) 
*/ 
?>


extract() 将数组中的单元转为变量

<?php 
$array=array("key1"=-->1,"key2"=2,"key3"=3); 
extract($array); 
echo "$key1 $key2 $key3";//输出1 2 3 
?>

3.使用两个数组创建一个数组

<?php 
//array_combine(array $keys, array $values) 

$a=array('green','red','yellow'); 
$b=array(' volcado','apple','banana'); 
$c=array_combine($a,$b); 
print_r($c); 

?>


4. 建立指定范围数组

range()

5.自动建立数组

检查数组是否存在某个键名和值可以使用。

array_key_exists()in_arrary函数,isset()检查数组中的键名,当键名为NULL时,isset()返回false,而array_key_exists()返回true。

  • array_search()函数用于检查数组的键值是否存在,不存在返回NULL。
  • key()函数可以取得数组当前单元的键名。
  • list()函数,将数组中值赋给指定的变量。在数组遍历中非常有用。
$arr=array("红色","蓝色","白色");
list($red,$blue,$white)=$arr;
echo $red; //红色
echo $blue; //蓝色
echo $white; // 白色
  • array_fill()和array_fill_keys()可以用给定的值班填充数组的值和键名
  • array_filp()可以交换数组中的键名和值,另外如果交换数组中有相同的值,则相同的值转换为键名后,值保留最后一个
  • array_keys()和array_values()函数可以取得数组中的键名和值,并保存到一个新的数组中。
  • array_splice(arry $input,int $offset[,int $length[,array $replacement]])将数组中的一个或多个单元删除并用其它值代替。
  • array_unique(),可以移除数组中的重复的值,返回一个新数组,并不会破坏原有的数组。

数组的遍历与输出

1. 使用while循环访问数组

应用whilelist()each()函数对数组遍历

2. for循环访问数组

3. 使用foreach循环访问数组

<?php 
$color=array("a"=-->"red","blue","white"); 
foreach($color as $value) 
{ 
echo $value."
";//输出数组的值 
} 
foreach($color as $key=&gt;$value) 
{ 
echo $key."=&gt;".$value."
";//输出数组的键名和值 
} 
?>

数组的排序

1. 升序排序 

  • sort(array $array[,int $sort_flags]) 注意:在对含有混合类型值的排序时要小尽,因为可能会产生错误。
  • asort()也可升序排序,是对数组的值进行排序,但它排序后的数组还保持键名和值之间的关联。
  • Ksort()对数组的键名排序,排序后键名和值之间的关联不改变。

2. 降序排序。

  • rsort()
  • arsort()
  • krsort()

3. 多维数组的排序。

需要自行重新设计遍历,默认函数库仅支持一维数组。

4. 对数组重新排序。

shuffle()
作用将数组用随机的顺序排列,并删除原有的键名

array_reverse()
将一个数组按相反顺序排序

5. 自然排序

natsort()对大小写敏感

6. 其它操作

合并数组

array_merge($array1,$array2)
合并后将一维数以后的数组都当做一个单元返回。
array_merge_recusive()可以在保持现有数组结构下对数组进行合并。

数组的栈操作.

  • 出栈: array_pop($arr);
  • 入栈: array_push($arr,var);

取得数组当前单元

  • current()函数能够获取数组内部指针指向的单元的值,但不移动数组的内部指针。
  • next($arr),将指针移到下一个单元。
  • end($arr)将指针移到尾部。

数组计算

  • count()
  • sizeof()

计算数组中的元素个数
array_count_values()函数可以计算数组中的一个值出现的次数

PHP 相关文章推荐
第五章 php数组操作
Dec 30 PHP
php递归删除目录下的文件但保留的实例分享
May 10 PHP
Linux下创建nginx脚本-start、stop、reload…
Aug 03 PHP
PHP模块化安装教程
Jun 01 PHP
php版微信自动登录并获取昵称的方法
Sep 23 PHP
php分页原理 分页代码 分页类制作教程
Sep 23 PHP
微信公众号开发客服接口实例代码
Oct 21 PHP
PHP屏蔽关键字实现方法
Nov 17 PHP
PHP attributes()函数讲解
Feb 03 PHP
thinkPHP框架通过Redis实现增删改查操作的方法详解
May 13 PHP
laravel-admin select框默认选中的方法
Oct 03 PHP
PHP实现文件上传后台处理脚本
Mar 04 PHP
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-3 代码组织和重用2
Jul 03 #PHP
PHP和Mysqlweb应用开发核心技术-第1部分 Php基础-2 php语言介绍
Jul 03 #PHP
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-1 开始了解php
Jul 03 #PHP
PHP的范围解析操作符(::)的含义分析说明
Jul 03 #PHP
一个基于PDO的数据库操作类(新) 一个PDO事务实例
Jul 03 #PHP
PHP array_multisort()函数的使用札记
Jul 03 #PHP
PHP导出MySQL数据到Excel文件(fputcsv)
Jul 03 #PHP
You might like
高亮度显示php源代码
2006/10/09 PHP
PHP常用特殊运算符号和函数总结(php新手入门必看)
2013/02/02 PHP
关于zend studio 出现乱码问题的总结
2013/06/23 PHP
php中3种方法删除字符串中间的空格
2014/03/10 PHP
PHP生成网站桌面快捷方式代码分享
2014/10/11 PHP
在WordPress中获取数据库字段内容和添加主题设置菜单
2016/01/11 PHP
thinkphp3.x中cookie方法的用法分析
2016/05/19 PHP
thinkPHP中钩子的两种配置调用方法详解
2016/11/11 PHP
thinkPHP5.0框架命名空间详解
2017/03/18 PHP
JavaScript中使用正则匹配多条,且获取每条中的分组数据
2010/11/30 Javascript
Javascript技术难点之apply,call与this之间的衔接
2015/12/04 Javascript
如何在 Vue.js 中使用第三方js库
2017/04/25 Javascript
vue.js使用代理和使用Nginx来解决跨域的问题
2018/02/03 Javascript
一个简单的node.js界面实现方法
2018/06/01 Javascript
微信小程序学习笔记之文件上传、下载操作图文详解
2019/03/29 Javascript
微信小程序页面间跳转传参方式总结
2019/06/13 Javascript
Node.js API详解之 V8模块用法实例分析
2020/06/05 Javascript
JavaScript实现轮播图效果
2020/10/30 Javascript
Python BeautifulSoup中文乱码问题的2种解决方法
2014/04/22 Python
Python利用Beautiful Soup模块修改内容方法示例
2017/03/27 Python
用Python写脚本,实现完全备份和增量备份的示例
2018/04/29 Python
基于python的ini配置文件操作工具类
2019/04/24 Python
Python使用lambda表达式对字典排序操作示例
2019/07/25 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
零基础小白多久能学会python
2020/06/22 Python
python动态规划算法实例详解
2020/11/22 Python
用python对excel进行操作(读,写,修改)
2020/12/25 Python
PyCharm 解决找不到新打开项目的窗口问题
2021/01/15 Python
一份比较全的PHP面试题
2016/07/29 面试题
区级文明单位申报材料
2014/05/15 职场文书
小学国旗下的演讲稿
2014/08/28 职场文书
作风转变心得体会
2014/09/02 职场文书
大学生自我评价范文
2015/03/03 职场文书
入党介绍人考察意见
2015/06/01 职场文书
创业开店,这样方式更合理
2019/08/26 职场文书
python glom模块的使用简介
2021/04/13 Python