真的很简单的php数组问题

时间:2013-10-04 21:02:37

标签: php

我不太确定我做错了什么,但看起来我自己正在努力去理解它。

$cards = array(range(1,52));
shuffle($cards);
echo $cards[0];

我得到一个数组到字符串转换错误。

我还尝试过一个自定义函数来根据输入值进行回显,但也没有。

4 个答案:

答案 0 :(得分:5)

您正在创建一个数组数组。 range()已经返回一个数组:

$cards = range(1,52);
shuffle($cards);
echo $cards[0];

答案 1 :(得分:1)

range函数返回一个数组(http://php.net/manual/en/function.range.php),因此语句$cards = array(range(1,52));已将$cards设置为只包含一个元素的数组 - 包含该范围的数组值从1到52。

因此,当您尝试echo $cards[0]时,您正在尝试回显一个产生错误的数组元素。

你想要做的是:

$cards = range(1, 52);
shuffle($cards);
echo $cards[0];

答案 2 :(得分:0)

摆脱arrayrange返回一个数组:

$cards = range(1,52);

答案 3 :(得分:0)

Range已经创建了一个数组。您已创建一个包含一个包含该数组的元素的数组。

$cards =range(1,52);
shuffle($cards);
echo $cards[0];