php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #8447 foreach does not take "list" for value
Submitted: 2000-12-27 20:24 UTC Modified: 2001-01-23 12:07 UTC
From: david@php.net Assigned:
Status: Duplicate Package: Feature/Change Request
PHP Version: 4.0.4 OS: Linux
Private report: No CVE-ID: None
 [2000-12-27 20:24 UTC] david@php.net
I have an array:

$a = array(0 => array(1, 2),
	1 => array(3, 4),
	2 => array(4, 5));

I want to do

foreach ($a as list($q, $r)) { }

i.e. i want the loop to return
$q = 1, $r = 2.
$q = 3, $r = 4.
$q = 5, $r = 6.

However I get

Parse error: parse error, expecting `T_VARIABLE' or `'$'' in [blahblah]

The equivalent would be

foreach ($a as $b) {
  list($q, $r) = $b;
}

but that is unnecessarily convoluted

list() is acceptable in function return context so it seems reasonable to have it here also.

(Note: No, I don't mean "foreach ($a as $b => $c)"
I mean "foreach ($a as $b => list ($q, $r))")

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-01-23 12:03 UTC] cynic@php.net
duplicate of #8595
 [2001-01-23 12:07 UTC] cynic@php.net
wrong status
 
PHP Copyright © 2001-2017 The PHP Group
All rights reserved.
Last updated: Sun Nov 19 01:31:42 2017 UTC