ThinkPHP フレームワーク面接の筆記試験の一般的な質問と回答

coldplay.xixi
リリース: 2020-08-10 17:09:33
転載
5274 人が閲覧しました

ThinkPHP フレームワーク面接の筆記試験の一般的な質問と回答

#1. ThinkPHP の単一エントリ ファイルを理解するにはどうすればよいですか?

ThinkPHP は、プロジェクトの展開とアクセスにシングル エントリ モードを使用します。ThinkPHP フレームワークを使用すると、どのようなプロジェクトを行う場合でも、一意のエントリ ファイルが作成されます。このファイルがプロジェクトの開始点となります。 . プロジェクトに入ったら、その他の操作を行います。

通常、エントリ ファイルには 3 つの部分が含まれます。

必須:

1. フレームワーク エントリ ファイルをロードします。

オプション:

2. フレームワーク パス、プロジェクト パス、およびプロジェクト名を定義します。

3. デバッグ モードと実行モードの関連定数を定義します。

関連トピックの推奨事項: 2020 Thinkphp インタビュー質問と回答 (完全なコレクション)

2. ThinkPHP の MVC 階層化とは何ですか

MVC の設計アイデアは抽象化されたものです。コンセプトは、アプリケーションのロジック層とビュー層を分離することです。

ThinkPHP で使用される MVC は、大まかに次のように反映されます:

Model (M): モデル データ処理クラス;

Controller (C): アプリケーション コントローラー (コア コントローラー アプリ クラス) ) とアクション コントローラーは両方ともコントローラーの役割を担っており、アクション コントローラーはビジネス制御を完了し、アプリケーション コントローラーはスケジュール制御を完了します。

View (V): View クラスとビュー テンプレート ファイルで構成されます。

ThinkPHP では、M や V に依存しないため、モデルやビューがなくても動作します。 C にも依存しません。これは、ThinkPHP には、Action の上にマスター コントローラー、つまりアプリケーション全体のスケジューリングを担当する App コントローラーがあるためです。 C が存在しない場合、ビュー V が存在する必要があります。存在しない場合、ビュー V は完全なアプリケーションではなくなります。

3. ThinkPHP アーキテクチャ (コア動作駆動 (CBD)) を理解する方法

コア: ThinkPHP のコア コード、MVC アーキテクチャなど;

動作: ThinkPHP フレームワークに付属する一部のメソッド、いくつかの予約された展開場所など;

ドライバー: ThinkPHP は、データベース ドライバー、キャッシュ ドライバー、タグ ライブラリ ドライバー、テンプレート エンジン ドライバーなども構築しています。外部セットアップ拡張として、開発プロセス中にこれらのドライバーを直接使用できるため、シンプルかつ効率的です。

4. ThinkPHP が SQL インジェクションを防ぐ方法

ThinkPHP アーキテクチャが設計されたとき、SQL インジェクションを防ぐためにいくつかの操作が実行されました。

注意すべき主な点は次のとおりです。

SQL 操作に配列を使用できる場合は、配列を使用します。

SQL ステートメントを使用して操作する必要がある場合は、内容を予測します。ユーザーによる入力。;たとえば、数値型の強制、SQL キーワードのチェック、正規表現の一致など。

5. デバッグ モードを有効にするにはどうすればよいですか?デバッグモードの利点は何ですか?

デバッグ モードを有効にするには、フレームワーク エントリ ファイル ステートメントをロードする前に、エントリ ファイルに定数定義ステートメントの行を追加するだけです;

define("APP_DEBUG",true );

デバッグ モードをオンにすると、システムは次のファイルを自動的に開きます:

操作ログ、SQL ログ、およびその他のログ。デバッグを容易にするために、エラーは詳細に記録されます。

##テンプレート ファイルのキャッシュを閉じます。テンプレートの変更はすぐに有効になります。

フィールド キャッシュをオフにします。データベース フィールドの変更はキャッシュの影響を受けません。

ファイルの大文字と小文字を厳密に確認してください。

デバッグ モードは、プロジェクトがオンラインになる前に、開発、デバッグ、デモンストレーションなどに便利なツールです。

6. ThinkPHP ではどのような構成モードがサポートされていますか?優先事項は何ですか?

ThinkPHP は、プロジェクト構成に関して独自の階層構成モードを作成しました。優先順位は右から左の順です:

従来の構成 -> プロジェクト構成 -> デバッグ構成 -> グループ構成 -> 拡張構成 -> 動的構成

7. ThinkPHP はどのような URL パターンをサポートしていますか?

ThinkPHP は 4 つの URL モードをサポートしており、URL_MODEL パラメーターを使用して変更できます。デフォルトは PATHINFO モードです。設定値 0、1、2、および 3 は次のとおりです: 通常モード、PATHINFO モード, REWRITE モードと互換性あり. Mode

8. ThinkPHP のシステム変数とは何ですか?システム変数を取得するにはどうすればよいですか?

ThinkPHP で一般的に使用されるシステム変数には、server、session、cookie、get、post、requestが含まれます。

システム変数の出力では、プレフィックスとして $Think. を使用する必要があります (例:) :

$Think.server.php_self = $_SESSION['php_self']

9. ThinkPHP の M メソッドと D メソッドの違い (高周波問題)

ThinkPHP は、データ モデル クラスをインスタンス化するために 2 つのメソッド M と D を使用します。違いは、M メソッドがデータ モデルの基本クラスを直接インスタンス化することです。D メソッドは、継承されたモデル クラスがあるかどうかを確認します。そうでない場合、関数は M と同じになります。メソッドは同じです。継承されたクラスが存在する場合は、継承されたクラスをインスタンス化します。

関連する学習に関する推奨事項:thinkphp

以上がThinkPHP フレームワーク面接の筆記試験の一般的な質問と回答の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:chinacion
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!