动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
  
   PHP → 阅读文章

 PHP4.0数组相关函数的应用

作者来源: 
阅读 数 106 人次 , 2006-3-29 4:10:00 


由于php具有快速、可靠、跨平台应用、源代码开放等特点,使得php成为最受欢迎的服务器端script语言之一,今天在这里我和大家谈谈php4.0中数组相关函数应用的问题。php 4.0 提供了超过三十个 php 3.0 没有的数组相关函数以供程序设计员运用。这些函数里面常用的功能有:检查一个数组里面是否包含某个值,计算某个值在数组里面出现的次数,新增或者删除数组元素以及将数组元素重新排序等等,下面我将在这几方面与大家探讨。

1.检查数组中的值

如果有一个很大的数组,而你要做的只是检查数组里面是否包含某个你感兴趣的值,那么你可以使用 in_array()函数来轻松地完成这项功能。下面这个例子的程序会在页面上显示「在数组中找不到你要找的值」("not found in this array") 这个字符串,因为你要找的字符串「albert」的确不在 $namesarray 这个数组里面:

<? $namesarray = array("heart", "love", "boy", "mary", "paul", "merry", "jacky");
$lookingfor = "albert";
if (in_array($lookingfor, $namesarray)) {
echo "找到了!";
} else {
echo "在数组中找不到你要找的值!";
}
?>

如果你把变量$lookingfor的值改成「mary」然后重新执行一次,那么这次画面上便会显示「找到了!」("you've found it!"),因为「mary」这个值的确存在在$namesarray数组里面。 如果你想知道数组所包含的元素总个数,那么你可以使用简单易用的count()函数:

<? $namesarray = array("heart", "love", "boy", "mary", "paul", "merry", "jacky");
$count = count($namesarray); ?>

变量$count的值将会是7。

2.数组元素的增加

你可以很容易地在数组的头或者尾端新增一个元素。

下面的例子中首先示范如何使用 array_push() 函数在数组的尾端新增元素:

<? /* 首先我们建立一个数组 */
$fruitarray = array("apple", "orange", "banana", "peach", "pear");
/* 使用array_push()函数在原有数组尾端新增一些元素 */
array_push($fruitarray, "grape", "pineapple", "tomato");
/* 现在把该数组的所有元素的键(key)与值(value)都显示在网页上 */
while (list($key,$value) = each($fruitarray)) {
echo "$key : $value<br>";
}
?>

显示结果如下:

0 : apple
1 : orange
2 : banana
3 : peach
4 : pear
5 : grape
6 : pineapple
7 : tomato

现在来示范如何从数组的开头新增一些元素。下面的程序代码和前面一个例子几乎完全相同,唯一的差别只是这里使用的函数是array_unshift()而不是 array_push()。

<?
/* 首先我们建立一个数组 */
$fruitarray = array("apple", "orange", "banana", "peach", "pear");
/* 使用array_unshift()函数在原有数组开头新增一些元素 */
array_unshift($fruitarray, "grape", "pineapple", "tomato");
/* 现在把该数组的所有元素的键(key)与值(value)都显示在网页上 */
while (list($key,$value) = each($fruitarray)) {
echo "$key : $value<br>";
}
?>

显示结果如下:

0 : grape
1 : pineapple
2 : tomato
3 : apple
4 : orange
5 : banana
6 : peach
7 : pear

3.数组的合并

array_merge()函数将两个或以上的数组合并成一个新的数组,在合并数组元素的时候,合并的顺序是按照原有数组被呼叫到的顺序来决定。如果原有数组本身已经被重新排序过,那么在数组合并完成以后,你必须针对产生出来的新数组重新再排序一次。下面这个范例就介绍这个函数的使用方式:

<? /* 首先建立第一个数组 */
$fruitarray = array("apple", "orange", "banana", "peach", "pear");
/* 接下来建立第二个数组 */
$vegarray = array("carrot", "green beans", "asparagus", "artichoke", "corn");
/* 现在使用array_merge()函数将两个数组合并成一个新的数组 */
$goodfoodarray = array_merge($fruitarray, $vegarray);
/* 最后我们把合并后的新数组的所有元素的键(key)与值(value)都显示在网页上 */
while (list($key,$value) = each($goodfoodarray)) {
echo "$key : $value<br>";
}
?>

显示结果如下:

0 : apple
1 : orange
2 : banana
3 : peach
4 : pear
5 : carrot
6 : green beans
7 : asparagus
8 : artichoke
9 : corn

4.数组元素的删除

介绍完如何新增元素以及合并数组以后,现在我来介绍如何从数组中删除一些元素。首先,如果要从数组的尾端删除元素,我们可以使用 array_pop() 函数。另外还有一个函数叫做 array_shift(),它是用来从数组的开头删除一些元素。在我们把元素从数组中删除以后,该数组就再也找不到我们之前删除的元素了,但是被删除的元素还是可以透过一个变量来取得它的值。

现在我们试着使用array_pop()函数从数组的尾端删除一些元素:

<?
/* 首先我们建立一个数组 */
$fruitarray = array("apple", "orange", "banana", "peach", "pear");
/* 使用array_pop()函数从数组的尾端删除一个元素 */
$popped = array_pop($fruitarray);
/* 现在我们把删除后的数组中所有元素的键(key)与值(value)都显示在网页上 */
while (list($key,$value) = each($fruitarray)) {
echo "$key : $value<br>";
}
echo "<br>最后,刚才被删除的元素的值会储存在 \$popped 变量里面,它的值是:$popped";
?>

显示结果如下:

0 : apple
1 : orange
2 : banana
3 : peach

最后,刚才被删除的元素的值会储存在 $popped 变量里面,它的值是: pear 。

接下来示范如何从数组的开头删除元素:

<?
/* 首先我们建立一个数组 */
$fruitarray = array("apple", "orange", "banana", "peach", "pear");
/* 使用 array_shift()函数从数组的开头删除一个元素 */
$shifted = array_shift($fruitarray);
/* 现在我们把删除后的数组中所有元素的键(key)与值(value)都显示在网页上 */
while (list($key,$value) = each($fruitarray)) {
echo "$key : $value<br>";
}
echo "<br>最后,刚才被删除的元素的值会储存在 \$shifted 变量里面,它的值是:
$shifted";
?>

显示结果如下:

0 : orange
1 : banana
2 : peach
3 : pear

5.数组的排序

最后,刚才被删除的元素的值会储存在 $shifted 变量里面,它的值是:apple 。

php4.0提供了许多函数可以用来将数组的元素重新排序,但是在这里我只介绍基本的排序方式好让你能了解数组排序的过程:

<? /* 首先我们建立一个数组 */
$fruitarray = array("apple", "orange", "banana", "peach", "pear");
/* 使用 sort()函数将数组的元素重新排序 */
sort($fruitarray);
/* reset ($fruitarray) 以便我们能正确的将它从头至尾的显示*/
/* 现在我们把删除后的数组中所有元素的键(key)与值(value)都显示在网页上 */
while (list($key,$value) = each($fruitarray)) {
echo "$key : $value<br>";
}
?>

显示结果如下:

0 : apple
1 : banana
2 : peach
3 : orange
4 : pear

 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:一组文件数据库函数
· 下一篇:PHP应用经典技巧二则
· PHP出错界面
· php通用检测函数集(4)
· 使用PHPDoc轻松建立你的PEAR文档
· PHPShop存在多个安全漏洞
· PHP中的一些常识:类篇


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077