Parallel array assignment in PHP
Most languages make it easy to take an array like [1, 2, 3]
and assign those values 开发者_如何学Cto variables a
, b
, and c
with a single command.
For example, in Perl you can do
($a, $b, $c) = (1, 2, 3);
What's the corresponding trick in PHP?
[Thanks so much for the lightning fast answer! I know this is a trivial question but all the obvious google queries didn't turn up the answer so this is my attempt to fix that.]
Use list()
:
list($a, $b, $c) = $someArray;
Use list
$arr = array(1,2,3);
list($a, $b, $c) = $arr;
As of PHP 7.1 you can use the list shorthand []
for array destructuring.
[$a, $b, $c] = [1, 2, 3];
Also as of 7.1 you can destructure non-numerically keyed arrays similar to the way that object destructuring works in ES6. https://stitcher.io/blog/array-destructuring-with-list-in-php
精彩评论