注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

php 王建

php之路

 
 
 

日志

 
 

php 引用变量  

2013-02-17 11:02:53|  分类: php类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
引用是什么 ?
在 PHP 中引用意味着用不同的名字访问同一个变量内容。这并不像 C 的指针,
替代的是,引用是符号表别名。注意在 PHP 中,变量名和变量内容是不一样的,
因此同样的内容可以有不同的名字。最接近的比喻是 Unix 的文件名和文件本身——变量名是目录条目,
而变量内容则是文件本身。引用可以被看作是 Unix 文件系统中的 hardlink。 
引用做什么?
事例1:PHP 的引用允许用两个变量来指向同一个内容
1<?php
2$a = 1 ;
3$b = & $a;
4echo $a ;
5echo $b //$a 和$b 指向了同一个内容
事例2:在函数内引用全局变量
01<?php
02$var1 "Example variable";
03$var2 "";
04 
05function global_references($use_globals)
06{
07    global $var1$var2;
08    if (!$use_globals) {
09        $var2 =& $var1// visible only inside the function  在方法内部才能生效
10    else {
11        $GLOBALS["var2"] =& $var1// visible also in global context
12    }
13}
14 
15global_references(false);
16echo "var2 is set to '$var2'\n"// var2 is set to ''
17global_references(true);
18echo "var2 is set to '$var2'\n"// var2 is set to 'Example variable'
事例3:如果在 foreach 语句中给一个具有引用的变量赋值,被引用的对象也被改变
1<?php
2$ref = 0;
3$row =& $ref;
4foreach (array(1, 2, 3) as $row) {
5    // do something
6}
7echo $ref;
事例4:引用传递变量
1<?php
2function foo(&$var)
3{
4    $var++;
5}
6 
7$a=5;
8foo($a);
9echo $a ;  // 6因为在 foo 函数中变量 $var 指向了和 $a 指向的同一个内容
取消引用:
1<?php
2$a = 1;
3$b =& $a;
4unset($a);
  评论这张
 
阅读(51)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018