请教大家个问题关于global

wz20001981 2011-12-18 09:33:02
这两段代码运行结果为啥不一样那,还有请教global原理。


global $var1,$var2;
$var1 = 1;
$var2 = 2;
function test(){
$var2 = &$var1;
}
test();
echo $var2;



global $var1,$var2;
$var1 = 1;
$var2 = 2;
$var2 = &$var1;
echo $var2;
...全文
261 12 打赏 收藏 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
helloyou0 2011-12-20
  • 打赏
  • 举报
回复
嘿嘿
<?php 
global $var1,$var2;
$var1 = 1;
$var2 = 2;
function test(){
global $var1,$var2;
$var2 = &$var1;
echo $var2;
}
test();
echo $var2;


网上看到这句话,应该是对的:
global $var; is equivalent to $var =& $GLOBALS['var'].
jaksmine 2011-12-20
  • 打赏
  • 举报
回复
global要放到函数里面。。。
xiachao2008 2011-12-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 ci1699 的回复:]

第二个好理解吧。
第一个。要在test里global ——————这个也是错的
[/Quote]
ci1699 2011-12-19
  • 打赏
  • 举报
回复
第二个好理解吧。
第一个。要在test里global
xiachao2008 2011-12-19
  • 打赏
  • 举报
回复




global $var1,$var2;
$var1 = 1;
$var2 = 2;
function test($var1,$var2){
$var2 = &$var1;
echo $var2;
}
test();

这样改也是错的。


xiachao2008 2011-12-19
  • 打赏
  • 举报
回复
我这样改 没有想到是错的



global $var1,$var2;
$var1 = 1;
$var2 = 2;
function test(){
$var2 = &$var1;
echo $var2;
}
test();


xiachao2008 2011-12-19
  • 打赏
  • 举报
回复
关注,我也不明白
wz20001981 2011-12-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 ci1699 的回复:]

第二个好理解吧。
第一个。要在test里global
[/Quote]

错了 global在哪都是一个结果
Abin-2008 2011-12-19
  • 打赏
  • 举报
回复

$var1 = 1;
$var2 = 2;
function test(){
global $var1,$var2;
$var2 = $var1;
echo $var2;
}
test();
kuohaoling 2011-12-19
  • 打赏
  • 举报
回复
第一里面 var2是新的局部变量 跟外面的var2不是一个
liveshow 2011-12-18
  • 打赏
  • 举报
回复
第二个就不说了。

第一个方法里面没引入global,如果你想echo $var2;的时候输出1,得把方法里赋值的&去掉

今天写一个程序用到global.asa这个文件, 由于以前只是听说和见过并没有真正的自己去用过, 出了些问题,
global.asa 代码如下: