请参阅示例:
$array = array('001' => 'A', '002' => 'B', '002' => value of 001);
我想声明一个像上面这样的数组。但我需要元素002的值始终与元素001相同。我该怎么做?
请帮帮我。非常感谢你。
答案 0 :(得分:1)
要使$array['002']
的值始终与$array['001']
相同,您需要通过引用分配它:
$array = array( '001' => 'A' );
$array['002'] = &$array['001'];
// -
正常赋值在新变量中创建原始值的副本,因此 - 当原始变量更改时 - 新创建的值保持旧值。使用关键字&
,我们可以通过引用进行分配:通过这种方式,新变量指向原始变量(如别名或文件的符号链接)并反映其变化。
现在,写下这个:
$array['001'] = 'B';
echo $array['002'];
结果是:
B
因为$array['002']
反映了$array['001']
新值。
答案 1 :(得分:0)
由于您的问题没有说明价值的来源,我只想说您可以使用
$val1 = 'A';
$array = array(
'001' => $val1,
'002' => $val1,
);