list()像 array()一样,这不是真正的函数,而是语言结构。list() 用一步操作给一组变量进行赋值。例子:
<?php
$a=array(1,2,3);
$b=array('x','y','z');
list($b,$a)=$a;
echo $a,'~~~~',$b;
//分析:此时,首先$a=$a[1],$b=$a[0],list()是从左到右分配值,从右到左开始赋值,因此此时$a=2,$a此时存储的是整型int的值,所以$a[0]等于null,再把$a[0]赋值给$b
//结果:2~~~
?>
<?php
$a=array('1','2','3');
$b=array('x','y','z');
list($b,$a)=$a;
echo $a,'~~~~',$b;
//分析:此时,首先$a=$a[1],$b=$a[0],list()是从左到右分配值,从右到左开始赋值,因此此时$a='2',$a此时存储的是字符串类型的值,而字符串也可以看做是一个索引数组,所以$a[0]='2',再把$a[0]赋值给$b
//结果:2~~~2
?>
<?php
//不借助第三个变量互相交换2个变量的值
$a=3;
$b=9;
list($b,$a)=array($a,$b);
echo $a,'~~~',$b;//结果为:9~~~3
?>
<?php
$arr=array('1'=>'a','3'=>'b','2'=>'c');
list($a,,$c)=$arr;
echo $a,'~~~',$c;
//分析:先分配对应值,$a=$arr[0],$c=$arr[2],再赋值$c=c,$a=null
//结果:~~~c
?>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。