设为首页收藏本站language 语言切换
查看: 1443|回复: 0
收起左侧

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

[复制链接]
发表于 2010-2-24 13:35:52 | 显示全部楼层 |阅读模式
<br>                   由于PHP具有快速、可靠、跨平台应用、源代码开放等特点,使得PHP成为最受欢迎的服务器端Script语言之一,今天在这里我和大家谈谈PHP4.0中数组相关函数应用的问题。PHP 4.0 提供了超过三十个 PHP 3.0 没有的数组相关函数以供程序设计员运用。这些函数里面常用的功能有:检查一个数组里面是否包含某个值,计算某个值在数组里面出现的次数,新增或者删除数组元素以及将数组元素重新排序等等,下面我将在这几方面与大家探讨。  <BR><BR>1.检查数组中的值  <BR><BR>如果有一个很大的数组,而你要做的只是检查数组里面是否包含某个你感兴趣的值,那么你可以使用 in_array()函数来轻松地完成这项功能。下面这个例子的程序会在页面上显示「在数组中找不到你要找的值」("Not found in this array") 这个字符串,因为你要找的字符串「Albert」的确不在 $namesArray 这个数组里面:  <BR><BR><? $namesArray = array("Heart", "Love", "Boy", "Mary", "aul", "Merry", "Jacky"); <BR>$lookingFor = "Albert";  <BR>if (in_array($lookingFor, $namesArray)) { <BR>echo "找到了!"; <BR>} else { <BR>echo "在数组中找不到你要找的值!"; <BR>} <BR>?>  <BR>  <BR><BR>如果你把变量$lookingFor的值改成「Mary」然后重新执行一次,那么这次画面上便会显示「找到了!」("You've found it!"),因为「Mary」这个值的确存在在$namesArray数组里面。 如果你想知道数组所包含的元素总个数,那么你可以使用简单易用的count()函数:  <BR><BR><? $namesArray = array("Heart", "Love", "Boy", "Mary", "aul", "Merry", "Jacky"); <BR>$count = count($namesArray); ?>  <BR>  <BR><BR>变量$count的值将会是7。  <BR><BR>2.数组元素的增加  <BR><BR>你可以很容易地在数组的头或者尾端新增一个元素。  <BR><BR>下面的例子中首先示范如何使用 array_push() 函数在数组的尾端新增元素:  <BR><BR><? /* 首先我们建立一个数组 */ <BR>$fruitArray = array("apple", "orange", "banana", "each", "pear");  <BR>/* 使用array_push()函数在原有数组尾端新增一些元素 */ <BR>array_push($fruitArray, "grape", "pineapple", "tomato");  <BR>/* 现在把该数组的所有元素的键(key)与值(value)都显示在网页上 */ <BR>while (list($key,$value) = each($fruitArray)) { <BR>echo "$key : $value<br>"; <BR>}  <BR>?>  <BR>  <BR><BR>显示结果如下:  <BR><BR>0 : apple <BR>1 : orange <BR>2 : banana <BR>3 : Peach <BR>4 : pear <BR>5 : grape <BR>6 : pineapple <BR>7 : tomato  <BR>  <BR><BR>现在来示范如何从数组的开头新增一些元素。下面的程序代码和前面一个例子几乎完全相同,唯一的差别只是这里使用的函数是array_unshift()而不是 array_push()。  <BR><BR><? <BR>/* 首先我们建立一个数组 */ <BR>$fruitArray = array("apple", "orange", "banana", "each", "pear");  <BR>/* 使用array_unshift()函数在原有数组开头新增一些元素 */ <BR>array_unshift($fruitArray, "grape", "pineapple", "tomato");  <BR>/* 现在把该数组的所有元素的键(key)与值(value)都显示在网页上 */ <BR>while (list($key,$value) = each($fruitArray)) { <BR>echo "$key : $value<br>"; <BR>}  <BR>?>  <BR>  <BR><BR>显示结果如下:  <BR><BR>0 : grape <BR>1 : pineapple <BR>2 : tomato <BR>3 : apple <BR>4 : orange <BR>5 : banana <BR>6 : Peach <BR>7 : pear  <BR>  <BR><BR>3.数组的合并  <BR><BR>array_merge()函数将两个或以上的数组合并成一个新的数组,在合并数组元素的时候,合并的顺序是按照原有数组被呼叫到的顺序来决定。如果原有数组本身已经被重新排序过,那么在数组合并完成以后,你必须针对产生出来的新数组重新再排序一次。下面这个范例就介绍这个函数的使用方式:  <BR><BR><? /* 首先建立第一个数组 */ <BR>$fruitArray = array("apple", "orange", "banana", "each", "pear");  <BR>/* 接下来建立第二个数组 */ <BR>$vegArray = array("carrot", "green beans", "asparagus", "artichoke", "corn");  <BR>/* 现在使用array_merge()函数将两个数组合并成一个新的数组 */ <BR>$goodfoodArray = array_merge($fruitArray, $vegArray);  <BR>/* 最后我们把合并后的新数组的所有元素的键(key)与值(value)都显示在网页上 */ <BR>while (list($key,$value) = each($goodfoodArray)) { <BR>echo "$key : $value<br>"; <BR>}  <BR>?>  <BR>  <BR><BR>显示结果如下:  <BR><BR>0 : apple <BR>1 : orange <BR>2 : banana <BR>3 : Peach <BR>4 : pear <BR>5 : carrot <BR>6 : green beans <BR>7 : asparagus <BR>8 : artichoke <BR>9 : corn  <BR>  <BR><BR>4.数组元素的删除  <BR><BR>介绍完如何新增元素以及合并数组以后,现在我来介绍如何从数组中删除一些元素。首先,如果要从数组的尾端删除元素,我们可以使用 array_pop() 函数。另外还有一个函数叫做 array_shift(),它是用来从数组的开头删除一些元素。在我们把元素从数组中删除以后,该数组就再也找不到我们之前删除的元素了,但是被删除的元素还是可以透过一个变量来取得它的值。  <BR><BR>现在我们试着使用array_pop()函数从数组的尾端删除一些元素:  <BR><BR><? <BR>/* 首先我们建立一个数组 */ <BR>$fruitArray = array("apple", "orange", "banana", "each", "pear");  <BR>/* 使用array_pop()函数从数组的尾端删除一个元素 */ <BR>$popped = array_pop($fruitArray);  <BR>/* 现在我们把删除后的数组中所有元素的键(key)与值(value)都显示在网页上 */ <BR>while (list($key,$value) = each($fruitArray)) { <BR>echo "$key : $value<br>"; <BR>}  <BR>echo "<br>最后,刚才被删除的元素的值会储存在 \$popped 变量里面,它的值是:$popped";  <BR>?>  <BR>  <BR><BR>显示结果如下:  <BR><BR>0 : apple <BR>1 : orange <BR>2 : banana <BR>3 : Peach  <BR>  <BR><BR>最后,刚才被删除的元素的值会储存在 $popped 变量里面,它的值是: pear 。  <BR><BR>接下来示范如何从数组的开头删除元素:  <BR><BR><? <BR>/* 首先我们建立一个数组 */ <BR>$fruitArray = array("apple", "orange", "banana", "each", "pear");  <BR>/* 使用 array_shift()函数从数组的开头删除一个元素 */ <BR>$shifted = array_shift($fruitArray);  <BR>/* 现在我们把删除后的数组中所有元素的键(key)与值(value)都显示在网页上 */ <BR>while (list($key,$value) = each($fruitArray)) { <BR>echo "$key : $value<br>"; <BR>}  <BR>echo "<br>最后,刚才被删除的元素的值会储存在 \$shifted 变量里面,它的值是: <BR>$shifted";  <BR>?>  <BR>  <BR><BR>显示结果如下:  <BR><BR>0 : orange <BR>1 : banana <BR>2 : Peach <BR>3 : pear  <BR>  <BR><BR>5.数组的排序  <BR><BR>最后,刚才被删除的元素的值会储存在 $shifted 变量里面,它的值是:apple 。  <BR><BR>HP4.0提供了许多函数可以用来将数组的元素重新排序,但是在这里我只介绍基本的排序方式好让你能了解数组排序的过程:  <BR><BR><? /* 首先我们建立一个数组 */ <BR>$fruitArray = array("apple", "orange", "banana", "each", "pear"); <BR>/* 使用 sort()函数将数组的元素重新排序 */ <BR>sort($fruitArray);  <BR>/* reset ($fruitArray) 以便我们能正确的将它从头至尾的显示*/  <BR>/* 现在我们把删除后的数组中所有元素的键(key)与值(value)都显示在网页上 */ <BR>while (list($key,$value) = each($fruitArray)) { <BR>echo "$key : $value<br>"; <BR>}  <BR>?>  <BR>  <BR><BR>显示结果如下:  <BR><BR>0 : apple <BR>1 : banana <BR>2 : Peach <BR>3 : orange <BR>4 : pear                   <br><br>
您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-4-6 07:22 , Processed in 0.102183 second(s), 24 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表