php里list函数

php里list函数

今天在开发中一个方法里看到list语言结构,刚开始以为是php里的一个函数!


list() 用于在一次操作中给一组变量赋值。

注释:list()只用于数字索引的数组,且假定数字索引从 0 开始。

说明

list() 用数组中的元素为一组变量赋值。

注意,与 array() 类似,list() 实际上是一种语言结构,不是函数。

如:

<?php
  $my_array = array('Dog','Cat','Horse');
  list($a, $b, $c) = $my_array;
  echo 'I have several animals, a '.$a.', a '.$b.' and a '.$c;
?>

结果如下,可正常输出

php里list函数

当数组不是数字数组而是关联数组时,如:

<?php
$my_array = array('a'=>'Dog','b'=>'Cat','c'=>'Horse');
list($a, $b, $c) = $my_array;
echo 'I have several animals, a '.$a.', a '.$b.' and a '.$c;
?>

结果将会报错

php里list函数

当使用索引数组是如:

<?php
  $my_array = array(0=>'Dog',1=>'Cat',2=>'Horse');
  list($a, $b, $c) = $my_array;
  echo 'I have several animals, a '.$a.', a '.$b.' and a '.$c;
?>

这是可正常输出,当代码改为

<?php
$my_array = array(1=>'Dog',2=>'Cat',3=>'Horse');
list($a, $b, $c) = $my_array;
echo 'I have several animals, a '.$a.', a '.$b.' and a '.$c;
?>

输出结果如下

php里list函数