ID: 33447 User updated by: david dot tulloh at infaze dot com dot au -Summary: 0<TR><TD><a href="page1.html">page1</a></td>mixed array_reduce starting value Reported By: david dot tulloh at infaze dot com dot au Status: Open Bug Type: Feature/Change Request PHP Version: 5CVS-2005-06-23 (dev) New Comment:
Submitted a patch and test file to php-dev. Previous Comments: ------------------------------------------------------------------------ [2005-06-24 02:24:42] david dot tulloh at infaze dot com dot au The solution you provided does work for my example. However, I still think it would be a good feature to have. The actual initial purpose I had in mind was to flatten arrays. $list = Array( Array("a"), Array("b"), Array("c") ); $flat = array_reduce($list, 'array_merge'); Which will unfortunately fail. Only allowing an integer or null starting type is an odd limitation, particularily as the array can contain any type. ------------------------------------------------------------------------ [2005-06-23 12:25:44] [EMAIL PROTECTED] And what if you try without the last parameter for array_reduce() ? ------------------------------------------------------------------------ [2005-06-23 11:23:28] david dot tulloh at infaze dot com dot au Description: ------------ The array_reduce function currently only starts with an integer value. This seriously limits it's functionality. For example, it should be trivial to use array_reduce to concatonate an array of strings. This currently isn't possible. Reproduce code: --------------- $list = Array("page1", "page2", "page3"); print_r( array_reduce($list, create_function('$v, $w', 'return $v.$w;') , '') ); Expected result: ---------------- page1page2page3 Actual result: -------------- 0page1page2page3 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=33447&edit=1