第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 过滤页面中的BOM(实现代码)
Jun 29 PHP
PHP二维数组排序的3种方法和自定义函数分享
Apr 09 PHP
php使用类继承解决代码重复的问题
Feb 11 PHP
支付宝接口开发集成支付环境小结
Mar 17 PHP
php实现插入数组但不影响原有顺序的方法
Mar 27 PHP
dvwa+xampp搭建显示乱码的问题及解决方案
Aug 23 PHP
php mysql数据库操作类(实例讲解)
Aug 06 PHP
php mysql PDO 查询操作的实例详解
Sep 23 PHP
php实现生成带二维码图片并强制下载功能
Feb 24 PHP
PHP单例模式数据库连接类与页面静态化实现方法
Mar 20 PHP
php中isset与empty函数的困惑与用法分析
Jul 05 PHP
PHP设计模式(一)工厂模式Factory实例详解【创建型】
May 02 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中PDO解决中文乱码问题的一些补充
2010/09/06 PHP
php利用curl抓取新浪微博内容示例
2014/04/27 PHP
合格的PHP程序员必备技能
2015/11/13 PHP
基于php编程规范(详解)
2017/08/17 PHP
PHP实现给定一列字符,生成指定长度的所有可能组合示例
2019/06/22 PHP
使用git迁移Laravel项目至新开发环境的步骤详解
2020/04/06 PHP
Javascript实现仿WebQQ界面的“浮云”兼容 IE7以上版本及FF
2011/04/27 Javascript
jquery插件tooltipv顶部淡入淡出效果使用示例
2013/12/05 Javascript
简单的JS时钟实例讲解
2016/01/13 Javascript
浅谈jQuery 选择器和dom操作
2016/06/07 Javascript
jquery结合html实现中英文页面切换
2016/11/29 Javascript
微信小程序 登录的简单实现
2017/04/19 Javascript
记一次vue跨域的解决
2020/10/21 Javascript
Nodejs + sequelize 实现增删改查操作
2020/11/07 NodeJs
[03:09]DOTA2亚洲邀请赛 LGD战队出场宣传片
2015/02/07 DOTA
python刷投票的脚本实现代码
2014/11/08 Python
Python数据结构之单链表详解
2017/09/12 Python
深入浅析python 中的匿名函数
2018/05/21 Python
python opencv实现图片旋转矩形分割
2018/07/26 Python
python多任务之协程的使用详解
2019/08/26 Python
python实现微信小程序用户登录、模板推送
2019/08/28 Python
Python日志syslog使用原理详解
2020/02/18 Python
JetBrains PyCharm(Community版本)的下载、安装和初步使用图文教程详解
2020/03/19 Python
Kears 使用:通过回调函数保存最佳准确率下的模型操作
2020/06/17 Python
毕业生自我推荐
2013/11/04 职场文书
大学生学业生涯规划
2014/01/05 职场文书
小学生班会演讲稿
2014/01/09 职场文书
英文自荐信常用句子
2014/03/26 职场文书
班级旅游计划书
2014/05/03 职场文书
感恩老师演讲稿600字
2014/08/28 职场文书
2015财务年终工作总结范文
2015/05/22 职场文书
如何利用STAR法则制作留学文书?
2019/08/26 职场文书
在pyCharm中下载第三方库的方法
2021/04/18 Python
html css3不拉伸图片显示效果
2021/06/07 HTML / CSS
MySQL分库分表详情
2021/09/25 MySQL
HTML页面中使两个div并排显示的实现
2022/05/15 HTML / CSS