Home > php教程 > php手册 > body text

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

WBOY
Release: 2016-06-21 09:07:50
Original
979 people have browsed it

函数|数组

(Coolman)

由于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



Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template