当我编写 $var = array('index' => 'some value')
时,在浏览器页面上显示表单时显示错误:
注意:C:\xampp\htdocs\learn\php\admin\authors\form.html.php 第 28 行中未定义偏移量:0。
但是当我像这样写 $var[] = array('index' => 'some value')
时,它完美地显示了页面。所以我必须把 [] 放在变量名之后。据我所知,我可以创建这样的数组变量 $var = array(some array)
。
那么这两者到底有什么区别呢?
最佳答案
结果不同:
$var = array('index' => 'some value');
var_dump($var);
// array(1) {
// ["index"]=>
// string(10) "some value"
// }
$var[] = array('index' => 'some value');
var_dump($var);
// array(1) {
// [0]=>
// array(1) {
// ["index"]=>
// string(10) "some value"
// }
// }
如果仔细观察,第一个示例创建了一个具有一对键的关联数组。第二个示例创建一个数组,其中包含索引 0 处的一项;那一项是关联数组。
关于php - $var[] = array() 和 $var = array() 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23167168/