php如何利用list()函數將陣列中的值賦給變數的方法

黄舟
發布: 2023-03-14 09:52:01
原創
1846 人瀏覽過

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中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板