ホームページ > バックエンド開発 > PHPチュートリアル > PHP 面接の基本的な質問をまとめたもの

PHP 面接の基本的な質問をまとめたもの

小云云
リリース: 2023-03-21 21:10:02
オリジナル
4011 人が閲覧しました

PHP エンジニアとして、面接中に必ずいくつかの質問にさらされることになりますが、この記事では主に基本的な PHP 面接の質問を紹介し、皆様のお役に立てれば幸いです。

  1. 二重引用符と一重引用符の違い

  • 二重引用符は変数を解釈しますが、一重引用符は変数を解釈しません

  • 二重引用符の中に一重引用符を挿入し、一重引用符の中に変数がある場合は、変数は解釈されます

  • 二重引用符で囲まれた変数名の後には、数字、文字、アンダースコア以外の特殊文字を続けるか、変数を {} で囲む必要があります。そうでない場合、変数名の後の部分は単一引用符文字にはできるだけ単一引用符を使用してください。GET と POST の送信メソッドの違いにより、1 つの TCP データ パケットが生成されます。 POST は 2 つの TCP データ パケットを生成します。

    GET リクエストの場合、ブラウザは http ヘッダーとデータを一緒に送信し、サーバーは 200 (データを返す) で応答します。は 100 continue で応答し、ブラウザはデータを送信し、サーバーは 200 ok (データを返します) で応答します。
  • GETはブラウザがロールバックしても無害ですが、POSTはリクエストを再度送信します

GETリクエストはブラウザによってアクティブにキャッシュされますが、

  • GETリクエストパラメータが手動で設定されない限り、POSTはキャッシュされませんset ブラウザの履歴に完全に保持され、POST のパラメータは保持されません

  • GET リクエストは URL エンコードのみ可能ですが、POST は複数のエンコード方法をサポートしています

  • GET は POST よりも安全性が低いためです。パラメータは URL 上で直接公開されており、機密情報を渡すために使用することはできません

  • クライアントの実際の IP を取得する方法

    $_SERVER['REMOTE_ADDR'] または getenv('REMOTE_ADDR')

  • の違いinclude と require
  • require は無条件の包含です。つまり、require がプロセスに追加された場合、条件が true であるかどうかに関係なく、require が最初に実行されます。ファイルが存在しない場合、またはファイルを開くことができない場合は、エラーが表示されます。 Include には戻り値がありますが、require には戻り値がありません (おそらく、インクルードされたファイルが存在しない場合はエラーが表示されますが、プログラムは続行されます)。注: インクルードされたファイルが存在しない場合、または構文エラーがある場合、 require は致命的です。

    AJAX の利点は何ですか?
  • ajax は、JavaScript または部分的な更新を実現し、サーバーへの負荷を軽減し、ユーザーエクスペリエンスを向上させるための JQuery フレームワーク
  • プログラム内での開発中に、プログラムの動作効率を向上させる方法

SQL ステートメントを最適化し、使用しないようにするクエリ ステートメントで * を選択し、どのフィールドを使用してチェックします。


サブクエリの希薄な使用はテーブル接続に置き換えることができます。

ファジー クエリの使用を減らします。


データ テーブルにインデックスを作成します。

  • プログラムで頻繁に使用されるデータのキャッシュを生成します

  • SESSIONとCOOKIEの違い

  • 保存場所:セッションはサーバーに保存され、Cookieはブラウザに保存されます

  • セキュリティ:セッションのセキュリティはcookie より大きい

  • isset と empty

isset() 関数は通常、変数が設定されているかどうかを検出するために使用されます

変数が存在しない場合は FALSE を返します

変数が存在し、その値が NULL の場合、また、FALSE を返します
    変数が存在し、その値が NULL でない場合は、TURE を返します
  • 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 つ テーブルには複数の一意のインデックスを持つことができます

ヒープとスタックの違い
スタックはコンパイル中に割り当てられるメモリ領域であるため、コードにはスタックのサイズを明確に定義する必要があります
ヒープはプログラムの実行中に動的に割り当てられます。割り当てられるメモリ領域は、プログラムの実行ステータスに基づいて、割り当てるヒープ メモリのサイズを決定できます。

関連する推奨事項:

HTML の基本的な面接の質問のまとめ

php の面接の質問 PHP の基本的な面接の質問

PHP の基本的な面接の質問のいくつか_PHP チュートリアル

以上がPHP 面接の基本的な質問をまとめたものの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート