Help us understand the problem. What is going on with this article?

PHPでコードを書いていたら突如画面が真っ白になった時の話し

 はじめに

釣りみたいなタイトルですがパソコンの不備などで起きた事象ではなく、しっかりとプログラミングを書いてエラーが発生した事で起きた現象です。笑

原因

結論から申しますと、
この現象の原因は、exit文を記述する位置に問題がありました。

エラー内容は以下の通り日本語にすると
「fetchというメンバー関数はありません」と怒られています。
(おそらく当時のコードはexit文の後にDB操作をしていたのでしょう)

Fatal error: Uncaught Error: Call to a member function fetch() on bool in 
階層フォルダ\階層ファイル Stack trace: #0 {main} thrown in 
階層フォルダ\階層ファイル on line 21

exit文とは

スクリプトを強制終了させる文です。

exit;//処理の終了
exit ('ここで終了');//処理の終了
exit (0);//処理の終了

exit文は、スクリプトの処理を「exit;」と記述した箇所で終了させます。exitは言語構造です。文字列や数値などのステータスを指定しない場合は、「 ( ) 括弧 」無しで記述できます。

私は1番上以外の記述はした事がないです。

解決策

ブラウザの画面が真っ白になった場合は、exit文の位置をみてみましょう。

見方は簡単でその後の処理は行われないと考えればOKです笑

※記述した箇所でスクリプトが強制的に終了しているため、コードの書き方によっては、エラー文が発生せずにただただ画面が真っ白い状態になる事もあると思います。

焦らないで

私は当時PHPを触り始めて間もない頃だったので、ブラウザと一緒に頭も真っ白になりました。

ただし、落ち着いて起きている現象やエラーを理解して行けばその先には必ず成長が待っています。今回は私自身過去のエラーの中でインパクトのあったものを取り上げましたが、課題解決の根本的な方法は一緒だと思います。

私も他人いとやかく言える技術レベルではありませんが焦らず一歩づつ共に成長していきましょう。

参考URL

[URL]https://teratail.com/questions/11286

YUYU070703
未経験からWEBエンジニアを目指しております。 「過去の自分が知りたかった情報」という視点で記事を投稿しています。 自分の記事が一人でも多くの方の役に立てれば幸いです。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away