PHP:替代通过引用传递的变量?

Sar*_*raz 0 php

在php6 开发者会议纪要中,我发现 PHP6 中不再存在 call-time-pass-by-reference 了。例如,以下两者对于 PHP6 都是不正确的:

<?php
$foo =& new StdClass();
?>

<?php
function &foo()
{
    return new StdClass();
}

$f = foo();
?>
Run Code Online (Sandbox Code Playgroud)

如果我们不能在 PHP6 中使用这样的东西:

$foo =& new StdClass();
Run Code Online (Sandbox Code Playgroud)

有什么替代方案吗?有什么方法可以模仿吗?

编辑:

PHP6 中的变量怎么样,我们可以对变量这样做吗,例如:

$this->data =& $_SESSION;
Run Code Online (Sandbox Code Playgroud)

Fru*_*nsi 5

自 PHP5 起,对象始终通过引用传递,因此:

$foo =& new StdClass();
Run Code Online (Sandbox Code Playgroud)

是相同的:

$foo = new StdClass();
Run Code Online (Sandbox Code Playgroud)