$guessString = 'KUÄA'; $usedLetters = ['Ä']; $userLetter = 'Ä'; for ($i = 0; $i < mb_strlen($guessString); $i++) { $temp = $guessString[$i]; if (in_array($guessString[$i], $usedLetters)) { echo $guessString[$i]; } else { echo ' _ '; } }
我试图比较$userLetter(通过GET链接发送)
但通过调试:
我终于发现它读错了字。
"?" "Ä"
"?"
"Ä"
所以我的问题是:如何使用for循环($guessString[$i])获得正确的字符?
你的问题是
$guessString[$i]
索引运算符不支持多字节,因此它返回 $i 第 字节
$i
$temp = mb_substr($guessString, $i, 1);
当然,你应该使用 $temp 你用过的地方 $guessString[$i]
$temp