我有一个“你是什么角色”的测试网站,是为一个作业用php构建的。我还需要存储5个可能的字符中每个字符有多少人。
我有一个只有文本的文本文件-0 0 0 0 0
每个0是一个计数器,用于计算某人选择特定字符的次数。
我把它分解成一个数组

$txt = "results2.txt";
$scores = file_get_contents($txt);
$editablescores = explode(",", $scores);

然后根据某人收到的分数,我想将+1添加到数组中相应的0中。
这是我正在使用的一个例子,但它不起作用。出现以下错误。注意:未定义的偏移量:4 in/users/sinclaa3/sites/phpstyles/hi.php,位于第53行
0 0 0 0将显示,但随后将1添加到其中。0 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);

最佳答案

你的explode是错误的;你说你有0 0 0 0 0,然后你试图在,上爆炸。固定的:

$editablescores = explode(" ", $scores);

请注意,由于同样的原因,您的implode是错误的;它应该是:
$storablescores = implode(" ", $editablescores);

10-04 19:40