PHP 中引用 - 引用传递

原创 2005年05月26日 01:47:00

引用传递

你可以将一个变量通过引用传递给函数,这样该函数就可以修改其参数的值。语法如下:

<?php
function foo (&$var)
{
    
$var++;
}

$a=5;
foo ($a);
// $a is 6 here
?>

注意在函数调用时没有引用符号 - 只有函数定义中有。光是函数定义就足够使参数通过引用来正确传递了。

以下内容可以通过引用传递:

  • 变量,例如 foo($a)

  • New 语句,例如 foo(new foobar())

  • 从函数中返回的引用,例如:

    <?php
    function &bar()
    {
        
    $a = 5;
        return
    $a;
    }
    foo(bar());
    ?>

    详细解释见引用返回

任何其它表达式都不能通过引用传递,结果未定义。例如下面引用传递的例子是无效的:

<?php
function bar() // Note the missing &
{
    
$a = 5;
    return
$a;
}
foo(bar());

foo($a = 5) // 表达式,不是变量
foo(5) // 常量,不是变量
?>

这些条件是 PHP 4.0.4 以及以后版本有的。

php的引用传递

虽然自己也是PHP的学习者,但之前还真没怎么了解PHP内部的垃圾回收流程,只是在我们的代码中用了unset,null,mysql_close,__destruct等等一些函数去释放对象防止内存溢出而已...

浅谈PHP值传递与值引用

PHP传值和传引用、传地址的区别是什么? 传值: 是把实参的值赋值给形参,那么对形参的修改,不会影响实参的值 传地址: 是传值的一种特殊方式,只是他传递的是地址,不是普通的如int 那么...

php值和对象的值传递和引用传递

在 PHP 中引用意味着用不同的名字访问同一个变量内容。这并不像 C 的指针:例如你不能对他们做指针运算,他们并不是实际的内存地址…… 查看引用不是什么了解更多信息。 替代的是,引用是符号表别名。注意...

php值传递 与引用传递

传值:是把实参的值赋值给行参 ,那么对行参的修改,不会影响实参的值 传引用 :真正的以地址的方式传递参数传递以后,行参和实参都是同一个对象,只是他们名字不同而已对行参的修改将影响实参的值 说明: ...

PHP jQuery库的引用

  • 2013年11月30日 16:06
  • 538B
  • 下载

php 引用传递、引用返回和取消引用以及unset

在 PHP 中引用意味着用不同的名字访问同一个变量内容。这并不像 C 的指针,替代的是引用是符号表别名。注意在 PHP 中,变量名和变量内容是不一样的,因此同样的内容可以有不同的名字。 ...

PHP-变量(二)(变量值传递与引用传递,及值传递转换成引用传递)

1. PHP 中的值传递 2. PHP 中的引用传递 3. 将值传递转变成引用传递

PHP引用(&)各种使用方法实例详解

php的引用(就是在变量或者函数、对象等前面加上&符号),在PHP 中引用的意思是:不同的名字访问同一个变量内容。与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容,在内存中存放的地址。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP 中引用 - 引用传递
举报原因:
原因补充:

(最多只允许输入30个字)