PHP 数组实例说明


Posted in PHP onAugust 18, 2008

PHP4.0中共有超过30个新的数组相关函数。其中很多通用函数允许你检查给定数组中是否存在特定对象、对数组元素计数、增加或删除元素,或对元素排序。

如果你有很大的一个数组,而所要完成的仅是找出一个存在的给定值,你可以使用in_array()以返回true 或 false。如下代码将输出“Not found in this array”——因为你将在$namesArray中寻找一个并不存在的“Alber ”。

<? $namesArray = array("Joe", "Jane", "Bob", "Mary", "Paul", "Eddie", "John");

$lookingFor = "Albert";

if (in_array($lookingFor, $namesArray)) {

echo "You've found it!";

} else {

echo "Not found in this array!";

}

?>
如果你改变了$lookingFor的值,将其变为“Mary”,你将得到消息“You've found it!”——因为“Mary”是$namesArray的一部分。

如果希望对数组元素计数,你可以使用count()函数:

<? $namesArray = array("Joe", "Jane", "Bob", "Mary", "Paul", "Eddie", "John");

$count = count($namesArray); ?>
$count值将为7。

你可以对任何数组添加元素,无论是在已存在数组的开始或末尾。你也可以使用函数以创建一个包含两个或多个数组元素的新数组。合并时每个数组将按需要的顺序排列。如果你的数组已经有内部的排序,你需要对新的合并数组重排序。

让我们从对已存在数组的末尾增添元素开始,使用函数array_push():

<? /* 创建原始数组 */

$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");

/* 加入到原始数组中 */

array_push($fruitArray, "grape", "pineapple", "tomato");

/* 通过其键值列出每个元素*/

while (list($key,$value) = each($fruitArray)) {

echo "$key : $value<br>";

}

?>
这将显示:

0 : apple

1 : orange

2 : banana

3 : kiwi

4 : pear

5 : grape

6 : pineapple

7 : tomato

当你需要对数组开头添加元素时,代码非常类似。不同处只是函数名:array_unshift() 而不是array_push()。

<? /* 创建原始数组 */

$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");

/* 加入到原始数组中 */

array_unshift($fruitArray, "grape", "pineapple", "tomato");

/* 通过其键值列出每个元素*/

while (list($key,$value) = each($fruitArray)) {

echo "$key : $value<br>";

}

?>
这将显示:

0 : grape

1 : pineapple

2 : tomato

3 : apple

4 : orange

5 : banana

6 : kiwi

7 : pear

函数array_merge()合并两个或更多的数组。

<? /* 创建原始数组 */

$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");

<? /* 创建第二个数组 */

$vegArray = array("carrot", "green beans", "asparagus", "artichoke", "corn");

/* 合并为一个数组 */

$goodfoodArray = array_merge($fruitArray, $vegArray);

/* 通过其键值列出每个元素*/

while (list($key,$value) = each($goodfoodArray)) {

echo "$key : $value<br>";

}

?>
这将显示:

0 : apple

1 : orange

2 : banana

3 : kiwi

4 : pear

5 : carrot

6 : green beans

7 : asparagus

8 : artichoke

9 : corn

现在已经对数组进行了增加元素和合并,现在来练习删除元素函数。你可以使用函数array_pop()从一数组末尾删除一个元素。如果使用函数 array_shift(),则从一数组开头删除一个元素。而实际上当你从数组删除元素时,此元素对你而言仍然可用——当你从已存在的数组中对元素进行 pop 或 shift时。

使用array_pop()函数从数组末尾删除一个值:

<?

/* 创建一数组*/

$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");

/* 在末尾弹出某值 */

$popped = array_pop($fruitArray);

/* 列出新数组内容,以及弹出的值*/

while (list($key,$value) = each($fruitArray)) {

echo "$key : $value<br>";

}

echo "<br>and finally, in $popped: $popped";

?>

这将显示:

0 : apple

1 : orange

2 : banana

3 : kiwi

and finally, in $popped: pear

Next, delete an element from the end of an array: ???????????

下面,从数组末尾删除某值:

<?

/* 创建一数组*/

$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");

/* 从数组头部移出某值 */

$shifted = array_shift($fruitArray);

/* 列出新数组的内容以及移出的值*/

while (list($key,$value) = each($fruitArray)) {

echo "$key : $value<br>";

}

echo "<br>and finally, in $shifted: $shifted";

?>
这将显示:

0 : orange

1 : banana

2 : kiwi

3 : pear

and finally, in $shifted: apple

有很多函数可以帮助你对数组元素排序。但我将会演示基本的排序以帮助你了解其过程:

<? /* 创建原始数组 */

$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");

/* 排序 */

sort($fruitArray);

/* 对其重设以正确从头到尾显示数组 */

/* 通过其键值列出每个元素*/

while (list($key,$value) = each($fruitArray)) {

echo "$key : $value<br>";

}

?>
这将显示:

0 : apple

1 : banana

2 : kiwi

3 : orange

4 : pear

PHP 相关文章推荐
phpBB BBcode处理的漏洞
Oct 09 PHP
PHP VS ASP
Oct 09 PHP
php下intval()和(int)转换使用与区别
Jul 18 PHP
Fatal error: Call to undefined function curl_init()解决方法
Apr 09 PHP
phpQuery占用内存过多的处理方法
Nov 13 PHP
php生成缩略图示例代码分享(使用gd库实现)
Jan 20 PHP
PDO预处理语句PDOStatement对象使用总结
Nov 20 PHP
php读取文件内容的方法汇总
Jan 24 PHP
PHP实现WebService的简单示例和实现步骤
Mar 27 PHP
php中注册器模式类用法实例分析
Nov 03 PHP
PHP中TP5 上传文件的实例详解
Jul 31 PHP
Laravel 实现在Blade模版中使用全局变量代替路径的例子
Oct 22 PHP
PHP获取网站域名和地址的代码
Aug 17 #PHP
php二分法在IP地址查询中的应用
Aug 12 #PHP
PHP调用MySQL的存储过程的实现代码
Aug 12 #PHP
PHP+MYSQL 出现乱码的解决方法
Aug 08 #PHP
php自动适应范围的分页代码
Aug 05 #PHP
用PHP读取RSS feed的代码
Aug 01 #PHP
IStream与TStream之间的相互转换
Aug 01 #PHP
You might like
PHP程序员学习使用Swoole的理由
2018/06/24 PHP
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
2019/12/20 PHP
PHP实现Markdown文章上传到七牛图床的实例内容
2020/02/11 PHP
Javascript JSQL,SQL无处不在,
2010/05/05 Javascript
基于jQuery实现下拉收缩(展开与折叠)特效
2012/12/25 Javascript
jQuery层级选择器用法分析
2015/02/10 Javascript
14款经典网页图片和文字特效的jQuery插件-前端开发必备
2015/08/25 Javascript
基于RequireJS和JQuery的模块化编程——常见问题全面解析
2016/04/14 Javascript
JS简单实现无缝滚动效果实例
2016/08/24 Javascript
AngularJS  自定义指令详解及实例代码
2016/09/14 Javascript
javascript的几种写法总结
2016/09/30 Javascript
20行JS代码实现网页刮刮乐效果
2017/06/23 Javascript
Vue中如何实现轮播图的示例代码
2017/07/27 Javascript
js将当前时间格式化为 年-月-日 时:分:秒的实现代码
2018/01/20 Javascript
9102了,你还不会移动端真机调试吗
2019/03/25 Javascript
JAVA面试题 static关键字详解
2019/07/16 Javascript
js实现简易计算器功能
2019/10/18 Javascript
[51:14]LGD vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
详解Python的迭代器、生成器以及相关的itertools包
2015/04/02 Python
python实现的简单抽奖系统实例
2015/05/22 Python
Pycharm新手教程(只需要看这篇就够了)
2019/06/18 Python
Pandas聚合运算和分组运算的实现示例
2019/10/17 Python
解决pyqt5异常退出无提示信息的问题
2020/04/08 Python
Python爬虫进阶之爬取某视频并下载的实现
2020/12/08 Python
Django url 路由匹配过程详解
2021/01/22 Python
亚洲领先的旅游体验市场:Voyagin
2019/11/23 全球购物
乌克兰品牌化妆品和香水在线商店:Bomond
2020/01/14 全球购物
自荐信封面
2013/12/04 职场文书
电脑租赁公司创业计划书
2014/01/08 职场文书
在校学生职业规划范文
2014/01/08 职场文书
小学三年级数学教学反思
2014/01/31 职场文书
文化宣传方案
2014/03/13 职场文书
宿舍标语大全
2014/06/19 职场文书
土建专业毕业生自荐书
2014/07/04 职场文书
学习党史心得体会2016
2016/01/23 职场文书
Nginx配置使用详解
2022/07/07 Servers