用php理解指针--写给刚刚学习编程的人
在刚刚学习编程时,可能for循环什么的还是可以理解,但是当学习到指针的时候,课上估计很多人就睡觉去了。
现在用两端php程序说明指针
先写一个简单的,大家都理解下
<?php class text2{ public function inc(&$test){ $test++; } } $test=1; $text=new text2(); $text->inc($test); echo $test; ?>
这里输出的结果将会是1。
然后再添加一个&符号
<?php class text2{ public function inc(&$test){ $test++; } } $test=1; $text=new text2(); $text->inc($test); echo $test; ?>
那么这里的输出将会是2
下面看看传递的数据是对象时
<?php class test1{ public $name=1; } class test2{ public function inc(test1 $test){ $test++; } } $test=new test1; $test1=new test2(); $test1->inc($test); echo $test->name; ?>
这里显示的结果是2
<?php class test1{ public $name=1; } class test2{ public function inc(test1 $test){ $test++; } } $test=new test1; $test1=new test2(); $test1->inc(clone $test); echo $test->name; ?>
这里显示的结果将会是1
也许开始时,我们将指针的理解和克隆的理解放在一起,这样就能好理解很多。