当前位置: 首页 > 图文教程 > 网络编程 > PHP > 理解动态网页技术PHP与数组的应用

PHP
利用discuz实现PHP大文件上传应用实例代码
php 遍历显示文件夹下所有目录、所有文件的函数,没有分页的代码
php在字符串中查找另一个字符串
php下HTTP Response中的Chunked编码实现方法
PHP实现定时生成HTML网站首页实例代码
PHP下一个非常全面获取图象信息的函数
PHP strtr() 函数使用说明
php 删除无限级目录与文件代码共享
php AJAX实例根据邮编自动完成地址信息
php miniBB中文乱码问题解决方法
cmd下运行php脚本
PHP 遍历XP文件夹下所有文件
php 移除数组重复元素的一点说明
discuz论坛 用户登录 后台程序代码
Optimizer与Debugger兼容性问题的解决方法
Zend Studio 无法启动的问题解决方法
php 页面执行时间计算代码
php smarty的预保留变量总结
php获取网页内容方法总结
php读取msn上的用户信息类

理解动态网页技术PHP与数组的应用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 203 ::
收藏到网摘: n/a

PHP 4.0中新添加了30个与组数有关的函数,其中一些常见的函数可以判断一个数组中是否包含某个元素,对一个数组中的元素进行计数,添加或删除数组中的元素或者对数组中的元素进行排序。

如果有一个很大的数组,而你需要找出其中是否包含一个特定的元素,就可以使用in_array()。下面的例子将显示“Not found in this array”,因为在一个名字为$namesArray的数组中查找Albert,而在$namesArray数组中不存在这样一个元素。

  
如果把$lookingFor的值改为Mary,就会得到“You've found it!”的信息,因为Mary是$namesArray数组中的一个元素。

如果要对一个数组中的元素个数进行计数,只要简单地使用count()函数即可:

以下为引用的内容:
<? $namesArray = array("Joe", "Jane", "Bob", "Mary", "Paul", "Eddie", "John");
$count = count($namesArray); ?>
  
返回的$count的值为7。

可以在一个数组的开头或结尾处添加元素,还可以使用array_merge()来建立一个包含二个或更多数组中元素的新数组,合并时,元素的顺序会按指定的顺序排列,如果原来的数组是被排过序的,在合并后需要对它重新排序。

我们可以首先利用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()函数可以从一个数组的开头删除一个元素。尽管使用array_pop()或 array_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

我们再来讨论一个从一个数组的末尾删除元素的例子:
 

以下为引用的内容:
<?
/* 建立一个数组*/
$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