私は次のコードを持っています:
<?php
if (!isset($_SESSION["word"])) {
$dictionary_file = new SplFileObject("dictionary.txt");
$dictionary_file->seek(rand(0, 80367));
$_SESSION["word"] = $dictionary_file->current();
$_SESSION["word_progress"] = "";
for ($i = 0; $i < strlen($_SESSION["word"]); $i++) {
$_SESSION["word_progress"] .= "_";
}
echo strlen($_SESSION["word"]);
echo $_SESSION["word"];
}
else {
if (isset($_GET["guess"])) {
// If their guessed letter is in the word
if (stripos($_SESSION["word"], $_GET["guess"]) !== false) {
$occurrence_points = strposall($_SESSION["word"], $_GET["guess"]);
$progress = $_SESSION["word_progress"];
foreach ($occurrence_points as $values) {
$progress[$values] = $_GET["guess"];
}
$_SESSION["word_progress"] = $progress;
}
}
}
?>
ファイルからランダムに単語を生成します。「バブル」を生成するとします。長さは6ですが、印刷して単語が実際にバブルであることを確認した後でも、8と報告されます。どうしてこれなの?