PHP エンジニアとして、面接中に必ずいくつかの質問にさらされることになりますが、この記事では主に基本的な PHP 面接の質問を紹介し、皆様のお役に立てれば幸いです。
二重引用符と一重引用符の違い
二重引用符は変数を解釈しますが、一重引用符は変数を解釈しません
二重引用符の中に一重引用符を挿入し、一重引用符の中に変数がある場合は、変数は解釈されます
二重引用符で囲まれた変数名の後には、数字、文字、アンダースコア以外の特殊文字を続けるか、変数を {} で囲む必要があります。そうでない場合、変数名の後の部分は単一引用符文字にはできるだけ単一引用符を使用してください。GET と POST の送信メソッドの違いにより、1 つの TCP データ パケットが生成されます。 POST は 2 つの TCP データ パケットを生成します。
GET リクエストの場合、ブラウザは http ヘッダーとデータを一緒に送信し、サーバーは 200 (データを返す) で応答します。は 100 continue で応答し、ブラウザはデータを送信し、サーバーは 200 ok (データを返します) で応答します。
GETリクエストパラメータが手動で設定されない限り、POSTはキャッシュされませんset ブラウザの履歴に完全に保持され、POST のパラメータは保持されません
$_SERVER['REMOTE_ADDR'] または getenv('REMOTE_ADDR')
プログラム内での開発中に、プログラムの動作効率を向上させる方法
SQL ステートメントを最適化し、使用しないようにするクエリ ステートメントで * を選択し、どのフィールドを使用してチェックします。
サブクエリの希薄な使用はテーブル接続に置き換えることができます。
ファジー クエリの使用を減らします。
データ テーブルにインデックスを作成します。
変数が存在しない場合は FALSE を返します
変数が存在し、その値が NULL の場合、また、FALSE を返しますempty()関数は変数が空かどうかをチェックします
変数が存在しない場合はTRUEを返します
変数が存在し、その値が「」、0、「0」、NULL、、FALSE、array()の場合、 var $var ; および属性のないオブジェクトは TRUE を返します
変数が存在し、値が ""、0、"0"、NULL、FALSE、array()、var $var および属性のないオブジェクトの場合、次に FALSE を返します
データベースの 3 つの正規形
第 1 正規形: 1NF は属性の原子性制約であり、属性がアトミックである必要があり、分解できません
第 2 正規形: 2NF はレコードの一意性 制約では、レコードが一意の識別子を持つこと、つまりエンティティの一意性が必要です。
第 3 正規形: 3NF はフィールドの冗長性に関する制約です。つまり、どのフィールドも他のフィールドから派生することはできません。フィールドは冗長ではありません。
主キー、外部キー、インデックスの違い
定義
主キー - レコードを一意に識別し、重複することはできず、空にすることはできません
外部キー - レコードの外部キーテーブルは別のテーブルの主キーです。外部キーは重複または null 値を持つことができます
インデックス - フィールドには重複値はありませんが、null 値を持つことができます
関数
主キー - データを保証するために使用されます整合性
外部キー - 使用されます
他のテーブルとの接続を確立するために使用されるインデックス - クエリのソート速度を向上させるため
番号
主キー - 主キーは 1 つだけ存在できます
外部キー - テーブルには複数の外部キーを持つことができますキー
インデックス - 1 つ テーブルには複数の一意のインデックスを持つことができます
ヒープとスタックの違い
スタックはコンパイル中に割り当てられるメモリ領域であるため、コードにはスタックのサイズを明確に定義する必要があります
ヒープはプログラムの実行中に動的に割り当てられます。割り当てられるメモリ領域は、プログラムの実行ステータスに基づいて、割り当てるヒープ メモリのサイズを決定できます。
関連する推奨事項:
PHP の基本的な面接の質問のいくつか_PHP チュートリアル
以上がPHP 面接の基本的な質問をまとめたものの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。