1. セッションとクッキーの違いは何ですか?
答え: session: ユーザーがアクセスするグローバル一意変数を保存します。サーバー上の PHP によって指定されたディレクトリ内の (session_dir) の場所に保存されます。
Cookie: ページへの連続したアクセスを保存するために使用されます。Cookie の場合は、ユーザーの WIN の Temp ディレクトリに保存されます。
どちらも時間を通して時間の長さを設定できます
2. SESSION の生存時間を変更する方法
答え: 方法 1: php.ini の session.gc_maxlifetime を 9999 に設定し、Apache を再起動します
メソッド 2:$savePath = "./session_save_dir/";
$lifeTime = 時間 * 秒;
session_save_path($savePath);
session_set_cookie_params($lifeTime);
session_start();
メソッド 3: setcookie() と session_set_cookie_params($lifeTime);
3.PHPとは何ですか?
答え: PHP は、動的な Web サイトを作成するためのサーバーベースのスクリプト言語です。PHP と HTML を使用して Web サイトのホームページを生成できます。
4. include ステートメントと require ステートメントの違いは何ですか? 同じファイルを複数回インクルードすることを避けるために、それらを (?) ステートメントに置き換えることができます。
答え: require->require は無条件の包含です。つまり、require がプロセスに追加されると、条件が true であるかどうかに関係なく、require が最初に実行されますinclude->include には戻り値がありますが、require には戻り値がありません (おそらく、require の方が include よりも高速であるためです)
注: インクルードされたファイルが存在しないか構文エラーがあり、include が
ではない場合、require は致命的です。 5. ASP、PHP、JSP の長所と短所について話す
答え: ASP の正式名は Active Server Pages で、生成および操作に使用できる WEB サーバー側の開発環境です答え: 動的で対話型の高性能 WEB サービス アプリケーションを実行します。 ASP はスクリプト言語 VB Script (Java script
) を使用します。
) を独自の開発言語として使用します。PHP は、クロスプラットフォームのサーバーサイド組み込みスクリプト言語であり、C、Java、Perl 言語から多くの構文を借用しています。
と PHP 独自の機能を組み合わせることで、Web 開発者が動的に生成されるページを迅速に作成できるようになり、現在の
のほとんどがサポートされます。
データベース。もう 1 つのポイントは、PHP は完全に無料で、PHP 公式サイト (http://www.php.ne) からダウンロードできることです。
t) 無料ダウンロード。また、ソース コードに無制限にアクセスでき、必要な機能を追加することもできます。JSP は、Sun が開発した新世代の Web サイト開発言語で、現在 ASP と PHP に共通する問題を完全に解決します -
スクリプト レベルの実行 (PHP4 も Zend のサポートを受けてコンパイルされ、実行されていると言われています)。Sun は Java に関する独自の専門知識を使用しています。
a の並外れた成果により、Java は Java アプリケーションや Java アプレット (Js) に加えて、新たな成果をもたらしました。
p——Java サーバー ページ。 Jsp は、Serverlet と JavaBean のサポートにより強力な Web サイトを完成させることができます
プログラム。
3 つはすべて、HTML コードに何らかのプログラム コードを混合し、言語エンジンにプログラム コードを解釈させて実行させる機能を提供します。
ただし、JSP コードはサーブレットにコンパイルされ、Java 仮想マシンによって解釈および実行されます。このコンパイル操作は JSP ページでのみ実行されます。
最初のリクエストで発生します。 ASP、PHP、および JSP 環境では、HTML コードは主に情報の表示スタイルを記述する役割を果たします
であり、処理ロジックを記述するためにプログラム コードが使用されます。通常の HTML ページは Web サーバーのみに依存しますが、ASP と PH
P. JSP ページでは、プログラム コードを分析して実行するために追加の言語エンジンが必要です。プログラムコードの実行結果は
に再埋め込まれます
HTML コードをまとめてブラウザに送信します。 ASP、PHP、JSP はすべて Web サーバー指向のテクノロジーですの場合、クライアント ブラウザには追加のソフトウェア サポートは必要ありません。
5. mvc についての理解を話し、一般的に使用されるフレームワークを挙げてください。
答え: MVC は、アプリケーションの入力、処理、出力の分離を強制する設計パターンです。 MVC を使用するアプリケーションは、モデル、ビュー、コントローラーの 3 つのコア コンポーネントに分割されます。彼らはそれぞれ独自のタスクを処理します。
ビューは、ユーザーが表示して操作するインターフェースです。
モデルは企業データとビジネス ルールを表します。
コントローラーはユーザー入力を受け入れ、モデルとビューを呼び出してユーザーのニーズを満たします。
MVC の利点: 結合度が低い、再利用性と適用性が高い、ライフサイクル コストが低い、迅速な導入、保守性、拡張性、ソフトウェア エンジニアリング管理に役立つ
MVC の欠点: MVC には明確な定義がなく、完全に理解するのは簡単ではありません。小規模なアプリケーションには適していません。
Smarty、zend フレームワーク、thinkphp、PHPlib テンプレート
6.PHP はどのようにして例外をスローしますか?
回答: try...catch を使用すると、例外コードが try コード ブロックに配置されます。例外がトリガーされなかった場合、コードは実行を続けます。
Catch コード ブロックは例外をキャッチし、例外情報を含むオブジェクトを作成します。 $e->getMessage()、異常なエラーメッセージを出力します。
7. PHP で値を渡すことと参照を渡すことの違いについて話しますか?
答え: 値渡し: 関数スコープ内の値への変更は関数の外では無視されます参照渡し: 関数のスコープ内で値を変更すると、関数の外側でもこれらの変更が反映されます
長所と短所: 値で渡す場合、php は値をコピーする必要があります。特に大きな文字列やオブジェクトの場合、これはコストのかかる操作になる可能性があります。
参照渡しでは値をコピーする必要がないため、パフォーマンスの向上に役立ちます。
8. PHP の include と require の違いは何ですか?
答え: 1. PHP は、インクルードが見つかったときに、それを 1 回再解釈する必要があります。同じページにインクルードが 10 回出現すると、それを 10 回再解釈します。 PHP で require が発生した場合、それが同じ PHP Web ページに何度表示されても、 require の場合、PHP はそれを 1 回だけ解釈します。
2. Require の実行効率は include よりも高くなります。
3. Require に含まれるコンテンツは現在のファイルのコンポーネントとみなされ、含まれるファイルに構文エラーがある場合、またはファイルが存在しない場合、PHP スクリプトは実行されなくなります。インクルード関数は以下と同等です このファイルのパスを指定することで、インクルードされたファイルが間違っていた場合でも、プログラム自体の実行には影響しません。
4. Include は含めるかどうかを決定できますが、require は状況に関係なく含めることができます
9. フォームの送信メソッドの取得と送信の違いは何ですか?
答え: get は HTTP プロトコル経由でリクエストを送信し、URL パラメータを渡すことでリクエストを受信します。
投稿はエンティティ データであり、フォームを通じて大量の情報を送信できます。
12. echo()、print()、print_r()の違い(3点)
答え: echo は PHP ステートメントであり、print と print_r は関数です。ステートメントには戻り値がありませんが、関数には (役に立たない場合でも) 戻り値を含めることができます。
print() は単純型変数 (int、string など) の値のみを出力できます
print_r() は、複合型変数 (配列、オブジェクトなど) の値を出力できます
echo は 1 つ以上の文字列を出力します
11. データベース内のトランザクションとは何ですか?
答え: トランザクションは、単位として順序付けられたデータベース操作のセットです。グループ内のすべての操作が成功した場合、トランザクションは成功したとみなされます。1 つの操作だけが失敗した場合でも、トランザクションは成功とは言えません。すべての操作が完了すると、
トランザクションはコミットされており、その変更は他のすべてのデータベース プロセスに影響します。操作が失敗した場合、トランザクションはロールバックされ、トランザクション内のすべての操作の効果はキャンセルされます。
12. サーバー Apache の 2 つの動作モードと違い
答え: 1.prefork.c モジュール (非スレッドの事前派生 MPM)
prefork MPM は複数の子プロセスを使用し、それぞれの子プロセスにはスレッドが 1 つだけあります。各プロセスは、特定の時点で 1 つの接続のみを維持できます。ほとんどのプラットフォームでは、Prefork MPM は Worker MPM よりも効率的です
値は高くなりますが、メモリ使用量ははるかに多くなります。
2.worker.c モジュール (マルチスレッドとマルチプロセッシングの混合をサポートするマルチプロセッシング モジュール)
ワーカー MPM は、それぞれが複数のスレッドを持つ複数の子プロセスを使用します。