|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2010-06-12 21:54 UTC] wdolek at gmail dot com
Description:
------------
I'm not able to use more closures on single script. Closures - assigned to variable or used as anonymous are null, instead of instance of Closure class.
Also it is really curious, sometimes it works, if there is more code before closure creation.
Fedora 12: 2.6.32.12-115.fc12.x86_64
Test script:
---------------
// * * * * * * * * * * closure 1
echo 'closure 1';
var_dump(function($arg1) {
return intval($arg1) * 2;
});
// * * * * * * * * * * closure 2
echo 'closure 2';
$c2 = function() {
echo time();
};
var_dump($c2);
// * * * * * * * * * * closure 3
echo 'closure 3';
var_dump(function() {
return sha1(strval(rand()));
});
Expected result:
----------------
closure 1
object(Closure)[1]
closure 2
object(Closure)[2]
closure 3
object(Closure)[3]
Actual result:
--------------
closure 1
null
closure 2
null
closure 3
object(Closure)[1]
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2026 The PHP GroupAll rights reserved. |
Last updated: Sun Mar 29 09:00:01 2026 UTC |
I cannot reproduce it on 5.3.3-dev. closure 1object(Closure)#1 (1) { ["parameter"]=> array(1) { ["$arg1"]=> string(10) "<required>" } } closure 2object(Closure)#1 (0) { } closure 3object(Closure)#2 (0) { }