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


(PHP 4, PHP 5, PHP 7)

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

array list ( mixed $var1 [, mixed $... ] )

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

Note:

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

Warning

PHP 5 里,list() 從最右邊的參數開始賦值; PHP 7 里,list() 從最左邊的參數開始賦值。

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

  1. 等號左邊是list()函數,右邊是索引數組(下標連續的,按0開始); 
  2. 數組中有幾個元素,則list()有幾個參數(參數必須是變量不能是值,而且變量是自定義的變量),跟數組的值是一一對應關系; 
  3. 在list()函數的參數中,空項也代表元素
<?php
list(,,$c) = ['aa','bb','cc'];
echo $c;//cc
echo '<br>';

list($a1,$b1,$c1) = ['aa1','bb1','cc1'];
echo $a1.$b1.$c1;//aa1bb1cc1
echo '<br>';

list($a2,,$c2) = ['aa2','bb2','cc2'];
echo $a2.$c2;//aa2cc2
echo '<br>';

list($a3,$b3,$c3) = [1=>'aa3',2=>'bb3',0=>'cc3'];
echo $a3.$b3.$c3;//cc3aa3bb3
echo '<br>';

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 '<br>';

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 '<br>';

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM