ID:               40620
 Updated by:       [EMAIL PROTECTED]
 Reported By:      mano at easymail dot hu
-Status:           Open
+Status:           Bogus
 Bug Type:         Scripting Engine problem
 Operating System: Windows XP
 PHP Version:      5.2.1
 New Comment:

Strict Standards: Only variables should be passed by reference in
/tmp/4.php on line 8


Previous Comments:
------------------------------------------------------------------------

[2007-02-24 20:55:12] mano at easymail dot hu

Description:
------------
I had create variables in my PHP4 application in the function-call
after php4.4 new reference notice came out. It was actually working in
php4.4.4 and the variable could be passed as reference:
test($arr = array("ref"=>1));

I am switching to php5 and neither in php5.1 nor in php5.2 it is
working or giving any error message.
I believe this should work, since the variable creation has precedence
over the function is passed.
Anyhow, if this is another "unsolvable" problem what is so hard to do
engine-wise, at least an error should be dropped like everywhere else
saying "Hello, this will NOT work!"

Reproduce code:
---------------
function test(&$arr){
$arr['ref'] = 2;
}
test($myarr = array('ref'=>1));
$myarr2 = array('ref'=>1);
test($myarr2);
print_r($myarr); 
print_r($myarr2); 

Expected result:
----------------
Array ( [ref] => 2 ) Array ( [ref] => 2 )

OR

Notice: Only variable could pass by reference

Actual result:
--------------
Array ( [ref] => 1 ) Array ( [ref] => 2 )


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=40620&edit=1

Reply via email to