首页  >  文章  >  后端开发  >  php如何利用list()函数将数组中的值赋给变量的方法

php如何利用list()函数将数组中的值赋给变量的方法

黄舟
黄舟原创
2017-07-17 15:53:561848浏览

CleverCode发现一个通过接收php函数返回多个值的方法。以前python里面经常用,php里面也有这个方法。

<?php

function retInfo()
{
    $name = &#39;张三&#39;;
    $age = 18;
    $sex = 1;
    return array($name,$age,$sex);
}

list($name1,$age1,$sex1) = retInfo();

echo "name:${name1},age:${age1},sex:${sex1}\r\n";


list($name2,$age2,$sex2) = array(&#39;李四&#39;,19,2);

echo "name:${name2},age:${age2},sex:${sex2}\r\n";


?>


list()

PHP list() 用一步操作把数组中的值赋给一些变量。同 array() 一样,list() 不是真正的函数,而是语言结构。

语法:

void list( mixed var, mixed ... )注意: list() 仅能用于数字索引的数组并假定数字索引从 0 开始。

例子1:

<?php
$arr_age = array(18, 20, 25);
list($wang, $li, $zhang) = $arr_age;
echo $wang;    //输出:18
echo $zhang;    //输出:25
?>

例子2,数据表查询

$result = mysql_query("SELECT id, username, email FROM user",$conn);
while(list($id, $username, $email) = mysql_fetch_row($result)) {
  echo "用户名:$username<br />";
  echo "电子邮箱:$email";
}

list() 使用数组索引

list() 中允许使用另一个数组来接收数组赋值过来的值,只是当使用索引数组的时候,其赋值顺序跟 list() 中列出的顺序是相反的:

$arr_age = array(18, 20, 25);
list($a[0], $a[1], $a[2]) = $arr_age;
print_r($a);

输出的 $a 数组结构如下:

Array ( [2] => 25 [1] => 20 [0] => 18 )

以上是php如何利用list()函数将数组中的值赋给变量的方法的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn