Maison  >  Article  >  développement back-end  >  List and Each in PHP

List and Each in PHP

WBOY
WBOYoriginal
2016-06-23 14:34:25784parcourir

List>>>>>>>>>>>>>>>>>>>>>>>>
    Sometimes it is very convienent way to do the continual assign,
ruby:

1 a,b,c,d = 1, 2, 3, 4;

php:

1 list($width, $height, $type, $attr) = getImageSize($img);

    list() only works on base of a number indexed array, we can use empty variable to

jump over the unwished value, such as:

1 $info = array('coffee', 'brown', 'caffeine');2 list($drink, , $power) = $info; 

    Extra elements are assigned NULL in list;

    Because list need an numbered array to gain values, when there is an hash array, you

need to do some work to get right numbered array, such as array_values or array_keys;

    list() construct can be used within other list() constructs, such as

1 $matrix = array(array(1,2), array(3,4));2 list(list($a,$b), list($c, $d)) = $matrix;

    List also can be used to swap values between variables without using an intermediary,

such as:

1 list($big, $small) = array($small, $big)

    this can be done no mater how many variables there are. In ruby we do it just on this

simply way

1 a, b = b, a;

Each>>>>>>>>>>>>>>>>>>>>>>>>
    Each() iterate an array key=>value, return an 4 sized array, using 0 and key to refer

original key, using 1 and value to refer original value.

    You have to use reset before you begin iterator an array or after you finish iterate in

order to make the array pointer reset to the 0th element in array.

    Usually each and list are combined to iterate an array in turns untill there are no

elements anymore. such as:

1 $fruit = array('a'=>'apple', 'b'=>'banana', 'c'=>'cranberry');2 reset($fruit);3 while(list($key, $val) = each($fruit))4 {5     echo "$key => $value\n";6 }

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:{php 控制流}Article suivant:{php 运算符}