Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4049940
  • 博文数量: 272
  • 博客积分: 7846
  • 博客等级: 少将
  • 技术积分: 6476
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-25 16:27
文章分类

全部博文(272)

分类:

2009-10-09 11:28:13

其实,PHP里List()并不是函数,而是和foreach、while、if一样的语言结构。
list()函数仅能用于数字索引的数组,且假定数字索引是从0开始。
看例子:
NO1:
 
 $book = array('linux服务器配置与管理','PHP程序设计');
  
 list( $key,$value ) = $book;
 echo $key.'=>'.$value.'
';
 
 list( $first,$second ) = each($book);
 echo $first.'=>'.$second.'
';
?>
输出为:
linux服务器配置与管理=>PHP程序设计
0=>linux服务器配置与管理
再看,
 
 $book = array('linux服务器配置与管理','PHP程序设计');
  
 list( $key,$value ) = each($book);
 echo $key.'=>'.$value.'
';
 
 list( $first,$second ) = each($book);
 echo $first.'=>'.$second.'
';
?>
输出为:
0=>linux服务器配置与管理
1=>PHP程序设计

 
说明,list()是一个赋值结构,负责把右值分别付给它的各个参数,如$key、$value等。each()是返回数组信息,返回的第一个参数是键值,第二个参数是具体元素,然后数组中的指针自动向后指一下。可见,each()是把刀,专门把一个大面包(整个一个数组$book)切成一个个小片($book[0]、$book[1]),再给list()这个客户嘴边,这时就看怎么给了,用each()切后的都是小片(单个元素,即为键值和值的统一体),不用each()直接给的话,就不分小片,而是一口一口嚼了(每口都吃的是具体的内容),O(∩_∩)O哈哈~
 
NO2:
常用模式是:
 
 $book = array('linux服务器配置与管理','PHP程序设计');
  
 while(list( $key,$value ) = each($book))
 echo $key.'=>'.$value;
?>
输出为:
0=>linux服务器配置与管理
1=>PHP程序设计
阅读(1541) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2009-10-10 15:17:59

好文