PHP を使用した Web ウェブサイトプログラムの開発経験の記録
私は PHP を純粋なシステム プログラミング スクリプトだと考えていました。3 月に初めて PHP を使用して Web サイトを書き始めました。ここで私の経験を要約します。
1: エラー表示とエラーログをオンにします。 php.ini で display_errors を On に設定するか、スクリプトの先頭で ini_set('display_errors', 'On') を使用します。
2: デバッグ ツールが必要です。 2 つのデバッグ ツールが必要です。1 つは C デバッガーと同様に、スクリプトにブレークポイントを設定し、実行時に変数値を表示し、変数値を変更するためのものです。私は xdebug + を使用します。 vim; 2 つ目は HTTP のデバッグ用です。ページを開くとエラー メッセージも表示されずに空白になるか、一部の ajax 呼び出しでプログラム エラーが発生します。このとき、実際の HTTP 通信プロセスを表示するにはツールが必要です。 . 私が使っているのはFirefoxのプラグインhttpfoxです。
3: カスタム エラー処理と例外ハンドラー。エラー処理と例外処理は非常に便利です。私は通常、エラー処理を使用してエンド ユーザーにエラーを報告し、例外を使用してデータベース接続エラーなどのアプリケーションの実行時エラーを記録します。これら 2 種類のエラーを区別できないことがよくありますが、私はこの考えを使用します。プログラムでエラーが発生した場合、ユーザーに報告されるエラー メッセージは分かりやすく、データベースとバックグラウンド コードの詳細は隠されなければなりません。このとき、trigger_error を使用してエラーを報告します。プログラマは、プログラムが失敗した理由を後から知ることができる必要があります。そのためには、エラーが発生した場所のコール スタックやその他の情報を記録する必要があります。例外自体はこの情報を完全に保持するため、この時点では new Exception("error message") をスローしてカスタム例外関数をトリガーし、error_log を使用して例外関数のログ ファイルにエラー メッセージを記録します。カスタム エラー ハンドラーを設定するには、set_error_handler を使用します。設定されたカスタム関数で false が返されると、処理後に PHP のデフォルトの処理関数によってエラーが再度処理されることを意味します。カスタム例外処理関数を設定するには、set_Exception_handler を使用します。
4: Firefox プラグイン Firebug などのいくつかの補助ツールは非常に便利です。ページ上の任意の要素の HTML コードと CSS 形式をすぐに表示でき、JavaScript をデバッグできます。
5: xdebug ツールを再度推奨します。すべてのエラー メッセージをフォーマットして出力するため、非常にわかりやすくなります。
6: MVC を使用する場合、どれをコントローラーに配置する必要があり、どれをモデルに配置する必要があるかが明確でないことがよくあります。統一されていれば、関数を実装する方法はたくさんあります。コーディングスタイルが悪くても、もう少し関数を読めば慣れるでしょう。グローバルな規約が統一されていれば、コードの良し悪しは関係ありません。世界的な合意を統一するには、それを遵守する意志の力が必要であり、機会を利用するために世界的な規範を破壊するという悪い習慣を克服するには時間がかかります。
7: 問題を総合的に検討してください。データベースの ER 図を常に手元に置き、各ページの役割と各ページのモジュールへの参照を明確に理解して、変更が行われたときにどこに影響するかを明確にします。データベース構造の概要と各ページの各モジュールへの参照がなければ、IQ だけで判断することは非常に信頼性が低く、思考にもツールが必要です。
8: プログラムのエラーを見つけるために自動ツールやテストデータに依存しすぎると、人々の IQ と思考能力が低下します。
9: データベース テーブル名は、Windows では大文字と小文字が区別されませんが、Linux では大文字と小文字が区別されます。ある OS からデータベースをエクスポートして別の OS のサーバーにインポートすると、コードの問題がよく発生します。したがって、データベース テーブル名には小文字を使用するのが最善であり、テーブル名の単語を区切るにはアンダースコアを使用できます。