list 把陣列中的值賦給一組變數

2022-07-31 05:21:15 字數 1552 閱讀 7146

(php 4, php 5, php 7)

list — 把陣列中的值賦給一組變數 

arraylist( mixed$var1[, mixed$...] )

像 array() 一樣,這不是真正的函式,而是語言結構。list()可以在單次操作內就為一組變數賦值。 

note:

list()僅能用於數字索引的陣列,並假定數字索引從 0 開始。

warning

php 5 裡,list()從最右邊的引數開始賦值; php 7 裡,list()從最左邊的引數開始賦值。

如果你用單純的變數,不用擔心這一點。 但是如果你用了具有索引的陣列,通常你期望得到的結果和在list()中寫的一樣是從左到右的,但在 php 5 裡實際上不是, 它是以相反順序賦值的。 

等號左邊是list()函式,右邊是索引陣列(下標連續的,按0開始); 

陣列中有幾個元素,則list()有幾個引數(引數必須是變數不能是值,而且變數是自定義的變數),跟陣列的值是一一對應關係; 

在list()函式的引數中,空項也代表元素

<?php

list(,,$c) = ['aa','bb','cc'];

echo

$c;//

ccecho '

';list($a1,$b1,$c1) = ['aa1','bb1','cc1'];

echo

$a1.$b1.$c1;//

aa1bb1cc1

echo '

';list($a2,,$c2) = ['aa2','bb2','cc2'];

echo

$a2.$c2;//

aa2cc2

echo '

';list($a3,$b3,$c3) = [1=>'aa3',2=>'bb3',0=>'cc3'];

echo

$a3.$b3.$c3;//

cc3aa3bb3

echo '

';list($a4,$b4,$c4) = [1=>'aa4',2=>'bb4',3=>'cc4'];

echo

$a4.$b4.$c4;//

aa4bb4 notice: undefined offset: 0 in d:\phpstudy\www\demo\function.php on line 14

echo '

';list($a5,$b5,$c5) = [1=>'aa5',2=>'bb5','a'=>'cc5'];

echo

$a5.$b5.$c5;//

aa5bb5 notice: undefined offset: 0 in d:\phpstudy\www\demo\function.php on line 18

echo '

';

遍歷兩組陣列,其中一組陣列的值賦值到另一組陣列中

let allarr 1,2,3,4,5,6,7,8 let params const requestdata 1 需改變的陣列長度不變,運用以下方法 for let marketid of allarr requestdata.push tmp 2 需改變的陣列長度不固定,運用以下方法 for l...

怎樣把乙個十六進製制的值賦給乙個變數

c語言支援二進位制 八進位制 十進位制和十六進製制的計數系統,在表示乙個數字時,用某個特殊的字元來區別其所屬的計數系統是必要的。在表示二進位制數時,要在數字的末尾加上 b 如101b 在表示八進位制數時,要使用反斜槓 如 014 在表示十六制數時,要使用 0x 字串行 如0x34 顯然,在表示十進位...

mysql將乙個表中字段A的值賦給另乙個表的字段B

mysql 的修改方法 update table a a inner join table b b on b.id a.id set a.description b.content mssql的修改方法 update a set a.description b.content from table ...