PHP之数组学习


Posted in PHP onMay 29, 2011

今天学习了数组,可以说是PHP的数据应用中较重要的一种方式。PHP的数组函数众多,下面是我学习的小结,借此记之,便于以后鉴之……

一、数组定义:

数组的定义使用 array()方式定义,可以定义空数组:

<?php 
$number = array(1,3,5,7,9); 
//定义空数组 
$result = array(); 
$color =array("red","blue","green"); 
//自定义键值 
$language = (1=>"English",3=>"Chinese",5=>"Franch"); 
//定义二维数组 
$two = array( 
"color"=>array("red","blue"), //用逗号结尾 
"week"=>array("Monday","Friday") //最后一句没有标点 
); 
?>

二、创建数组:

创建数组包含的函数有compact()、

1.compact()函数——将一个或多个变量(包含数组)转换为数组:

array compact ( mixed $varname [, mixed $... ] )


<?PHP 
$number = "1,3,5,7,9"; 
$string = "I'm PHPer"; 
$array = array("And","You?"); 
$newArray = compact("number","string","array"); 
print_r ($newArray); 
?>

compact()函数用于将两个或多个变量转换为数组,当然也包含数组变量。其参数是变量的名称而非带有$全名。

相反的函数是extract()作用顾名思义就是将数组转换为单个的字符串,键值作为其字符串名称,数组值作为字符串的值。

运行结果:

Array ( [number] => 1,3,5,7,9 [string] => I'm PHPer [array] => Array ( [0] => And [1] => You? ) )

2.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); 
?>

array_combine函数不多说了,谁看了都明白

运行结果:

Array ( [1] => I [3] => Am [5] => A [7] => PHP [9] => er )

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

 不多说了,直接上实例——

<?PHP 
$array1 = range(0,100,10);//0为起始值,100为结束值,10为步进值(默认步进值为1). 
print_r($array1); 
echo"<br />"; 
$array2 = range("A","Z"); 
print_r($array2); 
echo "<br />"; 
$array3 = range("z","a"); 
print_r($array3); 
?>

range()函数的默认步进值是1!

运行结果:

Array ( [0] => 0 [1] => 10 [2] => 20 [3] => 30 [4] => 40 [5] => 50 [6] => 60 [7] => 70 [8] => 80 [9] => 90 [10] => 100 ) 
Array ( [0] => A [1] => B [2] => C [3] => D [4] => E [5] => F [6] => G [7] => H [8] => I [9] => J [10] => K [11] => L [12] => M [13] => N [14] => O [15] => P [16] => Q [17] => R [18] => S [19] => T [20] => U [21] => V [22] => W [23] => X [24] => Y [25] => Z ) 
Array ( [0] => z [1] => y [2] => x [3] => w [4] => v [5] => u [6] => t [7] => s [8] => r [9] => q [10] => p [11] => o [12] => n [13] => m [14] => l [15] => k [16] => j [17] => i [18] => h [19] => g [20] => f [21] => e [22] => d [23] => c [24] => b [25] => a )

4.array_fill()函数——填充数组函数:
<?PHP 
$array = range(1,10); 
$fillarray = range("a","d"); 
$arrayFilled = array_fill(0,5,$fillarray);//这里的$fillarray可以是字符串,如"test". 
echo "<pre>"; 
print_r ($arrayFilled); 
echo "</pre>"; 
$keys = array("string","2",9,"SDK","PK"); 
$array2 = array_fill_keys($keys,"testing"); 
echo "<pre>"; 
print_r ($array2); 
echo "</pre>"; 
?>

运行结果:
Array 
( 
[0] => Array 
( 
[0] => a 
[1] => b 
[2] => c 
[3] => d 
) 
[1] => Array 
( 
[0] => a 
[1] => b 
[2] => c 
[3] => d 
) 
[2] => Array 
( 
[0] => a 
[1] => b 
[2] => c 
[3] => d 
) 
[3] => Array 
( 
[0] => a 
[1] => b 
[2] => c 
[3] => d 
) 
[4] => Array 
( 
[0] => a 
[1] => b 
[2] => c 
[3] => d 
) 
) 
Array 
( 
[string] => testing 
[2] => testing 
[9] => testing 
[SDK] => testing 
[PK] => testing 
)

二、数组的遍历:

1.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 />"; 
} 
?>

运行结果:
0=>50 
1=>120 
2=>180 
3=>240 
4=>380

2.while循环遍历:

while循环遍历一般结合list函数,以下是实例

<?PHP 
$staff = array( 
array("姓名","性别","年龄"), 
array("小张","男",24), 
array("小王","女",25), 
array("小李","男",23) 
); 
echo "<table border=2>"; 
while(list($keys,$value) = each($staff)){ 
list($name,$sex,$age) = $value; 
echo "<tr><td>$name</td><td>$sex</td><td>$age</td></tr>"; 
} 
echo "</table>"; 
?>

运行结果:
姓名 性别 年龄
小张 24
小王 25
小李 23
3.for循环遍历:
<?PHP 
$speed = range(0,220,20); 
for($i =0;$i<count($speed);$i++) { 
echo $speed[$i]." "; 
} 
?>

运行结果:
0 20 40 60 80 100 120 140 160 180 200 220
PHP 相关文章推荐
apache php模块整合操作指南
Nov 16 PHP
PHP根据传入参数合并多个JS和CSS文件的简单实现
Jun 13 PHP
php中ltrim()、rtrim()与trim()删除字符空格实例
Nov 25 PHP
PHP连接SQLServer2005的方法
Jan 27 PHP
php实现统计网站在线人数的方法
May 12 PHP
Ubuntu下安装PHP的mongodb扩展操作命令
Jul 04 PHP
PHP中error_reporting()用法详解
Aug 31 PHP
十个PHP高级应用技巧果断收藏
Sep 25 PHP
php计算给定日期所在周的开始日期和结束日期示例
Feb 06 PHP
thinkphp下MySQL数据库读写分离代码剖析
Apr 18 PHP
对php 判断http还是https,以及获得当前url的方法详解
Jan 15 PHP
PHP安装BCMath扩展的方法
Feb 13 PHP
PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题
May 29 #PHP
php连接数据库代码应用分析
May 29 #PHP
PHP文件上传原理简单分析
May 29 #PHP
php修改时间格式的代码
May 29 #PHP
PHP第一季视频教程(李炎恢+php100 不断更新)
May 29 #PHP
PHP获取文件绝对路径的代码(上一级目录)
May 29 #PHP
php学习之变量的使用
May 29 #PHP
You might like
《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组
2010/11/01 PHP
第六章 php目录与文件操作
2011/12/30 PHP
PHP常用函数和常见疑难问题解答
2014/03/05 PHP
php实现无限级分类
2014/12/24 PHP
PHP使用递归方式列出当前目录下所有文件的方法
2015/06/02 PHP
EXTJS内使用ACTIVEX控件引起崩溃问题的解决方法
2010/03/31 Javascript
浅析jQuery的链式调用之each函数
2010/12/03 Javascript
解析window.open的使用方法总结
2013/06/19 Javascript
Node.js(安装,启动,测试)
2014/06/09 Javascript
Javascript技术栈中的四种依赖注入小结
2016/02/27 Javascript
盘点javascript 正则表达式中 中括号的【坑】
2016/03/16 Javascript
JQuery ZTree使用方法详解
2017/01/07 Javascript
jQuery插件HighCharts实现的2D回归直线散点效果示例【附demo源码下载】
2017/03/09 Javascript
ES6新特性之模块Module用法详解
2017/04/01 Javascript
JS HTML图片显示Canvas 压缩功能
2017/07/21 Javascript
Vue+ElementUI实现表单动态渲染、可视化配置的方法
2018/03/07 Javascript
通过 JS 判断页面是否有滚动条的实现方法
2018/04/05 Javascript
Vue-router的使用和出现空白页,路由对象属性详解
2018/09/03 Javascript
浅析Vue.js中v-bind v-model的使用和区别
2018/12/04 Javascript
解析原来浏览器原生支持JS Base64编码解码
2019/08/12 Javascript
如何在Express4.x中愉快地使用async的方法
2020/11/18 Javascript
Python利用多进程将大量数据放入有限内存的教程
2015/04/01 Python
python实现清屏的方法
2015/04/30 Python
Python常用内置模块之xml模块(详解)
2017/05/23 Python
python如何处理程序无法打开
2020/06/16 Python
Python日志器使用方法及原理解析
2020/09/27 Python
CSS3 三维变形实现立体方块特效源码
2016/12/15 HTML / CSS
使用HTML5的Notification API制作web通知的教程
2015/05/08 HTML / CSS
戴森台湾线上商城:Dyson Taiwan
2018/05/21 全球购物
印度在线购买电子产品网站:Croma
2020/01/02 全球购物
俄罗斯电动工具和设备购物网站:Vseinstrumenti.ru
2020/11/12 全球购物
C语言面试题
2015/10/30 面试题
what is the difference between ext2 and ext3
2015/08/25 面试题
新闻发布会活动策划方案
2014/09/15 职场文书
妈妈别哭观后感
2015/06/08 职场文书
redis击穿 雪崩 穿透超详细解决方案梳理
2022/03/17 Redis