Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php如何利用list()函数将数组中的值赋给变量的方法

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

黄舟
黄舟asal
2017-07-17 15:53:561850semak imbas

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 )

Atas ialah kandungan terperinci php如何利用list()函数将数组中的值赋给变量的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn