为什么我的数组在php中显示为0?

时间:2009-06-09 02:08:42

标签: php arrays

我正在尝试制作一个创建3个字符串数组的文件,而不是随机显示3个字符串中的一个。有人能告诉我我做错了吗?

<?php

$pk[0] = "PK Fire!<br/>";
$pk[1] = "PK Thunder!<br/>";
$pk[2] = "PK Freeze!<br/>";

for($i = 0; $i < 5; $i++)
Echo "" + $pk[rand(0,2)] + "";

?>

4 个答案:

答案 0 :(得分:10)

。必须使用(点)代替+来连接字符串

Echo "" . $pk[rand(0,2)] . "";

而不是

Echo "" + $pk[rand(0,2)] + "";

答案 1 :(得分:8)

林健是正确的,当你使用“。”时,你正在使用“+”。组合字符串。

Echo "" + $pk[rand(0,2)] + "";

应该成为

echo "" . $pk[rand(0,2)] . "";

实际上,你可以做到:

echo $pk[rand(0,2)];

而不是在前后连接空字符串(因为它们是空白的,不添加任何内容)。

答案 2 :(得分:5)

你需要“。”连接。

答案 3 :(得分:1)

通过使用+运算符,您要求PHP将所有这些变量“强制”为数值并添加它们。任何不是数字的字符串或格式良好的字符串都将转换为0,并加在一起。在比较字符串时要注意这个陷阱:使用三等于而不是双等于,以免找到"fish" == "0"