PHP中不同数据类型上赋值操作符的不同行为
首先,解释赋值操作符的行为,并参见下面的示例:复制代码代码如下所示:
$ I = 0;
$ j = I $;
J = 0;
打印输出0
$ ARR =阵(0);
$ arr2 = $ ARR;
$ arr2 { 0 } = 1;
echo ARR { 0 }; / /打印输出0
B类
{
公共$ I = 0;
}
新的b();
美元=美元;
$ = i = 1;
回声($ i i);打印输出1
从这个例子我们可以看到,如果有合适的经营者=变量为基本数据类型的数组,然后做出一个正确的运算符=变量拷贝赋值给左边的变量;如果变量是基本数据类型或数组,如类,所以=有一点分配到左边变权的参考变量。注:参照右边的一个变量,而不是一个参考的内容被正确的变量;其下侧的一个例子。
复制代码代码如下所示:
美元=新的A();
b_a美元=美元;
b_r美元=美元;
b_a美元= null;
var_dump(合一); / /打印对象(一){ 2 } $,指向的内容仍
$b_r = null;
var_dump(合一); / /打印空,美元一点被清除
上面的例子中,如果美元美元一个字var =赋值,使用$ var =零破坏变量$ VAR实际上是字功美元指的是内容设置为空,事实上,这句话意味着,任何一个参考变量的内容区域可以用来摧毁内容区域的内容。所以,破坏变量$ VaR,使用unset($变量)。PS:事实上,在这种方式中,将VaR美元仅仅是一个参考,它不需要太多的记忆。如果我们想摧毁它没有关系。在这里,我们必须在设置模式摧毁它。
下面是用户手册中引用的一个示例。
美元=美元;
下面有这样的解释:
这意味着$和B指向同一个变量。
注:A和B在这里完全一样,也不是$ A指向B或B相反,但$ A和B指向相同的位置。
什么是参考
复制代码代码如下所示:
在PHP意味着同一个变量内容的不同名称访问的参考。这不是一个指针的C,而是引用符号表的别名。请注意,在PHP中,变量名和变量的内容是不同的,所以相同的内容可以有不同的名字,最恰当的比喻是UNIX文件名和文件本身的变量名是一个目录条目,和变量的内容是文件本身。引用可以看作是UNIX文件系统密切联系。
参考文献的一点解释。
int = i 0;
int = 0;
int = i;
= j;
在上面的代码中,p是指向i的内存地址的指针,而p是内容。P = J点变化P指针的方向,并随* P = 111.and PHP的表达我的内容是没有的,下面的例子
$ I = 0;
美元=我;
$ = 111将立即更改i i的值。