ID:               15599
 Updated by:       [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
-Status:           Open
+Status:           Wont fix
 Bug Type:         Feature/Change Request
 Operating System: all
 PHP Version:      4.1.1
 New Comment:

We won't make such a change that would definitely break backwards
compatibility even though the behaviour is not intuitive.



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

[2002-03-31 13:47:33] [EMAIL PROTECTED]

don't think so

example:

$var = "a";   // var $c->b
$ref = &$var; // function $c->fc();

and how do u think about:
$a = $ref;    // $myvar = $c->fc();
and
$b = &$ref;   // $myvar = $c->fc();

which is copy and which is reference?
$a or $b?

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

[2002-02-18 10:33:14] [EMAIL PROTECTED]

I think it is a bit funny that when returning references from functions
you get something looking kind of this in the end:
$a = & & $b;

That is, I think it would be more logic if a function that is specified
to return a reference wouldn't need to be set on the return side to
return a reference.. since I doesn't make my self clear, here is as an
example what I mean:

class a {
  var $b;
  function &fc() {
    return $this->b;
  }
}

$c = new a();
// A)
$myvar = $c->fc();
-----------------------------------
Now this will not work as I seem would be logical, instead one need to
do the last line:
// B)
$myvar = &$c->fc();

This seems funny.. My logic says that since the function is defined to
return a reference it would be enough (A).. no need to do it again like
in (B). This is true when passing a reference: somefunc($myvar) will
result in passing an reference if the func is defined like
function somefunc(&$arg)


Is there any chance of a change?
Opinions, comments etc. ?


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


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

Reply via email to