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 相关文章推荐
回答PHPCHINA上的几个问题:URL映射
Feb 14 PHP
收藏的一个php小偷的核心程序
Apr 09 PHP
在PHP中检查PHP文件是否有语法错误的方法
Dec 23 PHP
php set_time_limit(0) 设置程序执行时间的函数
May 26 PHP
实用的PHP带公钥加密类分享(每次加密结果都不一样哦)
Aug 20 PHP
PHP使用自定义方法实现数组合并示例
Jul 07 PHP
php实现登录tplink WR882N获取IP和重启的方法
Jul 20 PHP
php自定义函数实现二维数组排序功能
Jul 20 PHP
PHP单例模式定义与使用实例详解
Feb 06 PHP
php简单随机字符串生成方法示例
Apr 19 PHP
laravel 5异常错误:FatalErrorException in Handler.php line 38的解决
Oct 12 PHP
Laravel 实现Controller向blade前台模板赋值的四种方式小结
Oct 22 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
图书管理程序(一)
2006/10/09 PHP
php preg_match_all结合str_replace替换内容中所有img
2008/10/11 PHP
用JavaScript玩转游戏物理(一)运动学模拟与粒子系统
2010/06/19 Javascript
jquery获得当前html页面源码的方法
2015/07/14 Javascript
javascript实现的字符串与十六进制表示字符串相互转换方法
2015/07/17 Javascript
javascript 常用验证函数总结
2016/06/28 Javascript
AngularJS ng-template寄宿方式用法分析
2016/11/07 Javascript
BootStrap按钮标签及基本样式
2016/11/23 Javascript
angularjs ocLazyLoad分步加载js文件实例
2017/01/17 Javascript
JS实现隔行换色的表格排序
2017/03/27 Javascript
详解如何实现一个简单的 vuex
2018/02/10 Javascript
微信小程序开发之自定义tabBar的实现
2018/09/06 Javascript
js中async函数结合promise的小案例浅析
2019/04/14 Javascript
vue实现搜索功能
2019/05/28 Javascript
js实现窗口全屏示例详解
2019/09/17 Javascript
JS实现动态星空背景效果
2019/11/01 Javascript
JS document对象简单用法完整示例
2020/01/14 Javascript
JavaScript ES6 Class类实现原理详解
2020/05/08 Javascript
js 图片懒加载的实现
2020/10/21 Javascript
Python能做什么
2020/06/02 Python
python与c语言的语法有哪些不一样的
2020/09/13 Python
纯DOM+CSS3实现简单的小风车动画
2016/09/27 HTML / CSS
css3+jq创作含苞待放的荷花
2014/02/20 HTML / CSS
美国男女折扣服饰百货连锁店:Stein Mart
2017/05/02 全球购物
Speedo澳大利亚官网:全球领先游泳品牌
2018/02/04 全球购物
会计职业生涯规划范文
2014/01/04 职场文书
葬礼司仪主持词
2014/03/31 职场文书
负责人任命书范本
2014/06/04 职场文书
三好学生先进事迹材料
2014/08/28 职场文书
党员先进性教育整改措施
2014/09/18 职场文书
镇党委书记群众路线整改措施思想汇报
2014/10/13 职场文书
2014收银员工作总结范文
2014/12/16 职场文书
小学优秀班主任材料
2014/12/17 职场文书
单位考核聘任报告
2015/03/02 职场文书
六五普法学习心得体会
2016/01/21 职场文书
利用Python多线程实现图片下载器
2022/03/25 Python