我正在尝试理解这段代码:
<?php
$list = array(-10=>1, 2, 3, "first_name"=>"mike", 4, 5, 10=>-2.3);
print_r(array_keys($list));
?>
Run Code Online (Sandbox Code Playgroud)
输出:
Array ( [0] => -10 [1] => 0 [2] => 1 [3] => first_name [4] => 2 [5] => 3 [6] => 10 )
Run Code Online (Sandbox Code Playgroud)
我想知道为什么[4] => 2 and why [5] => 3我认为这是[4] => 4 and [5] => 5因为它们都在索引4和5.我对这个阵列到底发生了什么感到困惑,如果有可能,有人能指出我正确的方向,谢谢.
我知道字符串存储在堆上,对它们的引用存储在堆栈中.因此,下面的代码one将指向"John"堆栈中的堆,同样two指向"Smith"堆栈中的堆.
那么当我这样做会发生什么one = two?难道one现在指向哪里two,因为点two包含在堆上一个参照点或不会修改"John"对堆"Smith"?
String one;
one = "John";
String two = "Smith"
one = two;
Run Code Online (Sandbox Code Playgroud)