PHPビギナー必見!知っておきたいPHPエラー6選

2016年9月7日
PHPビギナー必見!知っておきたいPHPエラー6選
目次
  1. PHPビギナー必見!知っておきたいPHPエラー
  2. そもそもPHPエラーって
  3. PHPエラーの公式ドキュメント
  4. PHPエラーの内容を理解する
  5. PHPエラーの種類
  6. PHPビギナーがよくやってしまうエラー6選
  7. Parseerror誤字脱字
  8. Noticeスクリプトエラー
  9. Warning参照ファイルなし
  10. Fatalerror致命的なミス
  11. エラー
  12. 番外編WordPressでのエラーHTTPERROR500
  13. まとめ

WordPressやPHP学習中の方向けに、PHPでよく遭遇するエラーについてご紹介させて頂きます。

PHPビギナー必見!知っておきたいPHPエラー

そもそもPHPエラーって

ローカル開発環境やCodeCamp受講者が利用するエディタでは、PHPに記述ミスがあるとエラーや警告が表示されます。

範囲を選択_001

ローカル開発環境でもエラー時に白紙画面となっている方は、ぜひphp.iniを編集してエラー内容を表示させてみましょう。

なぜエラーが表示されない場合があるかというとエラー内容からハッキングの糸口を探られないようにするためです。

時々耳にするwebサイトのハッキングやデータベースのハッキング、webサイトの乗っ取りなどは、PHPの記述ミス、構文ミスが原因となることがあります。

なので、例えばWordPressなどでは、PHPエラーがあった場合白紙画面となり、エラー内容が表示されませんが、あれはハッカーにヒントを与えないため、通常非表示となっています。

_

同じようにエラー内容が出力される言語としては、RubyやJavaなどがあり、反対に出力されない言語としてはJavaScriptなどがあります。

PHPのエラーって心が折れる時がありますが、有り難いお告げとして、真摯に向き合うことが必要なのかもしれません。

PHPエラーの公式ドキュメント

PHPエラーの内容を理解する

error-101407_1280 (1)

PHPで表示されるエラーの内容には一定のルールがあります。

Warning:fopen(welcome.txt):failedtoopenstream:Nosuchfileordirectoryin/var/www/html/w3c.phponline2

というエラーが表示されたとします。

英文なので一見見難いですが、上記文章は分解して見ることができます。

色別にエラーメッセージを分解してみますと、

Warning:fopen(welcome.txt):failedtoopenstream:Nosuchfileordirectoryin/var/www/html/w3c.phponline2Warningfopen(welcome.txt):failedtoopenstream:Nosuchfileordirectoryinvar/www/html/w3c.phpline2

エラーレベル:エラーメッセージ;エラーのあるファイルと場所エラーレベル:エラーメッセージ;エラーのあるファイルと場所

_

となり、どこの何がどういけていないのかを教えてくれていることが分かります。

これを手がかりにコードの修正を行っていきます。

次にPHPで設定されているエラーレベルを確認しておきましょう。

PHPエラーの種類

  • 警告Warning- 注意Notice- 構文エラーParse error- 致命的なエラーFatal error- エラー- サーバー内部コードのエラーHTTP ERROR 500

PHP学習者およびweb開発者にとっては、エラーレベルというよりもコードが出力されない、実行されないことの方がストレスになっていると思います。

エラーの内容や解決策というのはプログラムの内容によってそれぞれ異なりますので、抽象的な情報は参考にならないと考えます。そこで今回は、PHPビギナーがよくやってしまうミスをいくつかご紹介させて頂きます。

PHPビギナーがよくやってしまうエラー6選

Parseerror誤字脱字

Parseerror:syntaxerror,unexpected”こんにちは;’(T_ENCAPSED_AND_WHITESPACE)in/var/www/html/php-test.phponline5Parseerror*Parse error/var/www/html/php-test.php5*

PHPビギナーにとって“** ; **;

Noticeスクリプトエラー

範囲を選択_013

Notice:Undefinedvariable:personalin/home/codecamp6414/htdocs/chat.phponline97Notice

ボタンを押したり、何か入力したりというスクリプト実行時(PHP処理実行中)に間違いがあると表示されるエラーになります。

Warning参照ファイルなし

Warning:fopen(welcome.tx):failedtoopenstream:Nosuchfileordirectoryin/var/www/html/w3c.phponline2Warning*Warning/var/www/html/w3c.php2*

コードに記述してあるファイルが見当たらなかったり、引数が間違っていたりすると表示されるエラーになります。

Fatalerror致命的なミス

1049囲を選択_010

致命的、と言われると何か悪いことをしているようにも思いますが、プログラムで記述して使っている拡張機能が実は使えない状態だった時などに現れるエラーになります。よくあるケースとしては、サーバー側でPDO(PHPの拡張モジュール)の設定ができていなかったりした時です。

エラー

PHPとmySQLはよくセットに使われますが、この2つの接続内容に間違いがあるとエラーが表示されます。

データベースのエラー集700種類以上(参考

番外編WordPressでのエラーHTTPERROR500

範囲を選択_006

WordPressの編集現場で遭遇するエラーになります。

まとめ

1と0の世界で動くコンピューターと曖昧な世界で動く人間が、ジャストフィットして稼働することは不可能と考えます。その結果、プログラムが実行できないエラーがあっても当然なのではないでしょうか?

codecamp-syoukai-koushi

GoToCodeCamp!** **GoToCodeCamp!

オシママサラ
オシママサラ
ライター 大手ボイラーメーカーに7年間営業職として勤務した後、2011年に早期リタイア。その後、インド南部への旅でこれからは IT だ✌と一眼発起。雑食的にプログラミング、Webサービス、IoT、FinTechなど学習中。2014年より仮想通貨の情報サイト【やさしくはじめる仮想通貨】を運営中。妻と子の3人暮らし。情報ソースは、日本語圏と英語圏。Ubuntuユーザー。

関連記事