- ベストアンサー
explode
どうかお願いします。 今 $handle2 = fopen("zenbu.txt", "r"); $contents = fread($handle2,filesize("zenbu.txt")); fclose($handle2); $gyou = explode("|",$contents); としてファイルから読み込んだ文書を分割しようとています。 しかし、 Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in C:\Program Files\xampp\htdocs\URL/sabu.php on line 122 とエラーが出てできません・・・。 文法はマニュアル通りにやってると思うのですが。。 区切り文字が悪いのかと「★」「\n」などで試してみましたが結果は同じでした。 何が悪いのでしょうか
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
n187さんこんにちは。 > Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in C:\Program Files\xampp\htdocs\URL/sabu.php on line 122 上記のエラーは「,」や「;」を期待しているところに予想外のものがある というエラーメッセージです。 エラーメッセージは explode()関数の行を指しているのでしょうか。 それ以前や他の場所でのエラーメッセージではありませんか。 また、n187さんのコードを試しましたが私のところでは問題なく処理されました。 ◆zenbu.txt -------------------------------------------------- abc|d|ef|ghi|jk|l|m|no|pqr|s|tu|vwxyz -------------------------------------------------- ◆PHPファイル -------------------------------------------------- <?php $handle2 = fopen("zenbu.txt", "r"); $contents = fread($handle2,filesize("zenbu.txt")); fclose($handle2); $gyou = explode("|",$contents); print "<pre>"; var_dump($gyou); print "</pre>"; ?> -------------------------------------------------- ◆結果 -------------------------------------------------- array(12) { [0]=> string(3) "abc" [1]=> string(1) "d" [2]=> string(2) "ef" [3]=> string(3) "ghi" [4]=> string(2) "jk" [5]=> string(1) "l" [6]=> string(1) "m" [7]=> string(2) "no" [8]=> string(3) "pqr" [9]=> string(1) "s" [10]=> string(2) "tu" [11]=> string(5) "vwxyz" } --------------------------------------------------
その他の回答 (1)
- Trick--x--
- ベストアンサー率26% (19/72)
122行目ってどれ?
お礼
おふた方すいません!! 私のミスでした・・・。 どうもお時間とらせてしまい、申し訳ありませんでした
補足
122行目は $gyou = explode("|",$contents); の部分です。 もし、その近辺でのエラーだとしても 見るかぎりなさそうなのですが・・。 更に広範囲のソースを出すと $youseisaki = $_POST['youseisaki']; if(file_exists("zenbu.txt")== TRUE){ $handle2 = fopen("zenbu.txt", "r"); $contents = fread($handle2,filesize("zenbu.txt")); fclose($handle2); $gyou = explode("|",$contents); $kazu = count($gyou); echo $kazu.gg"".$gyou[1]; for($i=0;$i<$kazu - 1;$i++){ となります。 echoは確認のためです。
補足
うーん、何故なのかさっぱりです・・。 どうしたらよいのか・・。 もしかしてと思い全角がないかも探したのですが