setlocaleで日本語を指定した後にechoしないとサイトが読み込まれず404 not foundと表示されます。
以下のコードで書いているsetlocale文は以前以下の二つのサイトを参照し書いたものですが、その時にecho文も加えておりました。
サイト1. https://blog.tokumaru.org/2015/02/phpbasename.html
サイト2. https://php-archive.net/php/mb_basename/
ただ先ほどコードを見直した際に、echoの部分が必要ないと判断し消したのですが、するとページが読み込まれなくなりました。
コードを変えるたびに、FileZillaで自分のウェブサイトにあげながら確認をしています。
本格的にphpを学習し始めたのが最近で、分からないためご教授いただければ幸いです。
php
1$file_name = __FILE__; 2setlocale(LC_CTYPE, 'Japanese_Japan.932'); // 追加 3echo $file_name;
上のコードの最下部のecho $file_name;を消すとサイトが表示されなくなるのですが、原因が分かりません。
実行環境
macOS catalina version 10.15.5
php 7.1.33
https://teratail.com/help/question-tips#questionTips3-4-2
ちなみに提示のコードだけで、最後のechoを消しても、エラーは出ませんでした。
実行されている環境、全て提示された方が良いかと思います。
(バージョン、OS、動作確認の仕方などなど)
m.ts10806 様
メッセージの方ありがとうございます。
実行環境についての記述を追加させて頂きました。
どうやって動作確認していますか?
あと、初めにコメントしたガイドラインは読まれましたか?
「エラーが表示される」だけではどのようなエラーかは伝わりませんよ。
(特に今回は再現しないから確認しようがない)
参考先が5年前ではさすがに意味がないのでは・・・
コードはこれで全部ですか?
本当にこれで全てならechoがないと何も出ないのは、何も出すようにしてないから当然と言えば当然ですが、404とは関係ないと思います。
ただ、環境情報詳細がないので、何とも言えません。
FileZillaでアップロードしているならOSはMacではなく、そのアップロード先のサーバでは?どういうサーバのどういうプランですか?
再掲しますが、提示のコードだけでは仰るような問題は再現しません。
echoを消すと出力処理がなくなるので何も出なくなるだけです。
m.ts10806 様
エラーの詳細について説明を補足させて頂きました。また、ブラウザを使い動作確認をすることは行っていませんでした。
>コードを変えるたびに、FileZillaで自分のウェブサイトにあげながら確認をしています。
???
この確認行為はブラウザじゃないんですか?
状況は正確に伝えてください。
回答1件
あなたの回答
tips
プレビュー