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 相关文章推荐
第二节 对象模型 [2]
Oct 09 PHP
destoon实现调用图文新闻的方法
Aug 21 PHP
PHP中UNIX时间戳和日期间的转换与计算实例
Nov 19 PHP
php上传大文件失败的原因及应对策略
Oct 20 PHP
thinkPHP多表查询及分页功能实现方法示例
Jul 03 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
Jul 26 PHP
利用php获得flv视频长度的实例代码
Oct 26 PHP
php 中htmlentities导致中文无法查询问题
Sep 10 PHP
PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】
Dec 21 PHP
PHP获取访问设备信息的方法示例
Feb 20 PHP
ThinkPHP5&amp;5.1框架关联模型分页操作示例
Aug 03 PHP
php屏蔽错误及提示的方法
May 10 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
JQuery最佳实践之精妙的自定义事件
2010/08/11 Javascript
基于jQuery的投票系统显示结果插件
2011/08/12 Javascript
js关闭模态窗口刷新父页面或跳转页面
2012/12/13 Javascript
js中的hasOwnProperty和isPrototypeOf方法使用实例
2014/06/06 Javascript
jQuery标签替换函数replaceWith()的使用例子
2014/08/28 Javascript
jquery处理页面弹出层查询数据等待操作实例
2015/03/25 Javascript
Javascript中的对象和原型(二)
2016/08/12 Javascript
jquery请求servlet实现ajax异步请求的示例
2017/06/03 jQuery
利用node.js实现自动生成前端项目组件的方法详解
2017/07/12 Javascript
js实现移动端导航点击自动滑动效果
2017/07/18 Javascript
webpack本地开发环境无法用IP访问的解决方法
2018/03/20 Javascript
Vue项目实现简单的权限控制管理功能
2019/07/17 Javascript
基于vue+echarts 数据可视化大屏展示的方法示例
2020/03/09 Javascript
[00:20]TI9不朽观赛名额抽取
2019/08/05 DOTA
python实现异步回调机制代码分享
2014/01/10 Python
python通过pil模块将raw图片转换成png图片的方法
2015/03/16 Python
scrapy spider的几种爬取方式实例代码
2018/01/25 Python
使用Python实现在Windows下安装Django
2018/10/17 Python
使用python PIL库实现简单验证码的去噪方法步骤
2019/05/10 Python
python爬虫租房信息在地图上显示的方法
2019/05/13 Python
pandas DataFrame行或列的删除方法的实现示例
2019/08/02 Python
python 类之间的参数传递方式
2019/12/20 Python
python画图常规设置方式
2020/03/05 Python
Python中SQLite如何使用
2020/05/27 Python
Abe’s of Maine:自1979以来销售相机和电子产品
2016/11/21 全球购物
Bose法国官网:购买耳机、扬声器、家庭影院、专业音响
2017/12/21 全球购物
英国办公家具网站:Furniture At Work
2019/10/07 全球购物
工作自我评价怎么写
2014/01/29 职场文书
社区道德讲堂实施方案
2014/03/21 职场文书
新员工试用期自我鉴定
2014/04/17 职场文书
品牌推广活动策划方案
2014/08/19 职场文书
2015年企业员工工作总结范文
2015/05/21 职场文书
初中生入团申请书范文(五篇)
2019/10/16 职场文书
教你做个可爱的css滑动导航条
2021/06/15 HTML / CSS
MySQL数据库中的锁、解锁以及删除事务
2022/05/06 MySQL
Java实现HTML转为Word的示例代码
2022/06/28 Java/Android