这段代码有什么问题?上述回波命令如何从二维数组中获得价值
<?php
$myarray=array_fill (0 , 2 , array_fill (0,1,3));
echo "> ".$myarray[0][1]." < <br>";
?>
结果是以下:
> <
我期望是 '> 3 <' 将被显示。
如何在本例中正确访问二维数组的值?
感谢
这段代码有什么问题?上述回波命令如何从二维数组中获得价值
<?php
$myarray=array_fill (0 , 2 , array_fill (0,1,3));
echo "> ".$myarray[0][1]." < <br>";
?>
结果是以下:
> <
我期望是 '> 3 <' 将被显示。
如何在本例中正确访问二维数组的值?
感谢
你的代码确实创造一个二维数组,但是这是实际的数据:
array(2) {
[0] =>
array(1) {
[0] =>
int(3)
}
[1] =>
array(1) {
[0] =>
int(3)
}
}
所以$myarray[0][1]
不存在。
对array_fill()
的外部调用创建了一个带有两个元素的数值数组,其中一个元素的内部是一个元素,值为3
。两个密钥集均以0
开头。这就是为什么你做不是得到内部数组中的密钥1
,但只有0
作为唯一的关键在那里。
请阅读有关的函数的自变量的解释为记载:http://php.net/manual/en/function.array-fill.php
谢谢你的回答。现在我知道......这是我的错,不仔细阅读手册 - 我认为array_fill函数中的第二个参数代表'end index',而它代表数组中元素的数量。 – sameucho
没有1个指数在第0指数$ myArray的[0] [1]
<?php
$myarray=array_fill (0 , 2 , array_fill (0,1,3));
echo "<pre>";
print_r($myarray);
echo "</pre>";
echo "> ".$myarray[0][0]." < <br>";
?>
OUTPUT:
Array
(
[0] => Array
(
[0] => 3
)
[1] => Array
(
[0] => 3
)
)
> 3 <
没有$ myArray的[0] [1]试试这个回声 “>” 。$ myarray [0] [0]。“<
”; – JYoThI