前提・実現したいこと
PaizaでPHPの学習中です。
以下のテキストファイルを読み込み、行ごとに変数s_1〜s_5へ代入し、探索を行うプログラムを書く予定でした。
発生している問題・エラーメッセージ
しかし、途中からs_1〜s_5の中身がなぜかNULLになってしまいます。
該当のソースコード
<div>■入力文字■</div> <?php for($a = 0; $a < 5; $a++){ global ${"s_".$a+1}; //※forから出た時にNULLにならないよう、一応s_1〜s_5をグローバル変数にしておきました var_dump(${"s_".$a+1}); echo " "; } echo "<br><br>"; for ($i = 0; $i < 5; $i++) { var_dump(${"s_".$i+1}); echo " "; $s = trim(fgets($fp)); $s = str_replace(array("\r\n","\r","\n"), '', $s); $s = explode(" ", $s); ${"s_".$i+1} = $s[0]; $num = $i+1; echo "s_$num = $s[0]"; echo " "; var_dump(${"s_".$i+1}); //この時点ではs_1〜s_5の中身がある状態です。 echo "<br>"; if($i == 4){ for ($j = 1; $j < 6; $j++) { echo "<br>"; var_dump($s_1); //ここでs_1の中身がNULLになってしまいます。 echo "<br><br>"; var_dump(${"s_".$j}); print preg_match("/XOOOO/", ${"s_".$j}); //この後文字探索をする予定でした } } } // fcloseでファイルを閉じる fclose($fp); ?>
以下出力画面
試したこと
補足情報(FW/ツールのバージョンなど)
お手数おかけしますが、回答していただけますと幸いです!
回答2件
あなたの回答
tips
プレビュー