我有一个“你是什么角色”的测验网站,它是用PHP构建的一项作业。我还需要存储有多少人获得5个可能的角色。
我有一个只包含文字的文字文件 - 0 0 0 0 0
每个0都是一个计数器,用于指出某人选择特定字符的次数。
我将它爆炸成数组
$txt = "results2.txt";
$scores = file_get_contents($txt);
$editablescores = explode(",", $scores);
然后根据有人收到的分数,我想在数组中为相应的0添加+1。
这是我正在使用的一个例子,但它不起作用。出现以下错误。注意:未定义的偏移量:第53行/Users/sinclaa3/Sites/PHPStyles/hi.php中的4个
显示0 0 0 0 0但是然后将1添加到其上。 0 0 0 0 0 1
if ($score < 6 ) {
$editablescores[0]++;
//0 denotes the position in the array that I want to add one to
};
$storablescores = implode(",", $editablescores);
file_put_contents($txt, $storablescores);
答案 0 :(得分:4)
你的explode
错了;你说你有0 0 0 0 0
,然后你试图在,
上爆炸。修正:
$editablescores = explode(" ", $scores);
请注意,由于同样的原因,您的implode
出错了;它应该是:
$storablescores = implode(" ", $editablescores);