PHP 面接の質問 (古典)

亚连
亚连オリジナル
2018-05-10 10:20:512066ブラウズ

私の経験とインターネット上の情報収集を通じて、PHP の職場での面接の質問をいくつかまとめました。将来、皆さんのお役に立てれば幸いです。

1. フォームの get 送信メソッドと post 送信メソッドの違いは何ですか?

答え: get はリクエストを送信することであり、HTTP プロトコルは受信するために URL パラメーターを介して渡されます。 post は、情報フォームを通じて大量に送信できるエンティティ データです。

2. セッションと Cookie の違いは何ですか?

答え: セッション: ユーザーがアクセスするグローバルな一意の変数を保存します。サーバー上の PHP によって指定されたディレクトリ内の (session_dir) の場所

cookie : ページへの連続したアクセスを保存するために使用されます。cookie の場合は、ユーザーの WIN の Temp ディレクトリに保存されます。

どちらも時間の長さを設定できます

3. データベースのトランザクションとは何ですか?

答え: トランザクションは、単位としてのデータベース操作の順序付けされたセットです。グループ内のすべての操作が成功した場合、トランザクションは成功したとみなされます。1 つの操作だけが失敗した場合でも、トランザクションは成功とは言えません。すべての操作が完了すると、トランザクションはコミットされ、その変更は他のすべてのデータベース プロセスに適用されます。操作が失敗した場合、トランザクションはロールバックされ、トランザクション内のすべての操作の効果はキャンセルされます。

4. PHP を使用して、前日の時刻を 2006-5-10 22:21:21 の形式で出力します

答え: echo date('Y-m-d H:i:s', strtotime(' -1 日')) ;

5. echo()、print()、print_r() の違い

答え: echo は PHP ステートメント、print と print_r は関数、ステートメントには戻り値がありません。関数は戻り値を持つことができます (役に立たない場合でも)

print() は単純な型の変数 (int、string など) の値のみを出力できます

print_r() は値を出力できます複合型変数 (配列、オブジェクトなど)

echo 1 つ以上の文字列を出力します

6. HTML と PHP を分離できるテンプレート

答え: Smarty、Dwoo、TinyButStrong、Template Lite、Savant、phemplate、XTemplate

10. PHP の意味

答え: PHP は動的な Web サイトを作成するためのサーバーサイドスクリプト言語です。PHP と HTML を使用して Web サイトのホームページを生成できます

11. MYSQL の機能は何ですか?現在時刻?、日付をフォーマットする関数は

です。 答え: now(), date( )

12. 変数が設定されているかどうかを検出する関数はありますか?空かどうかを検出します?

答え: isset($str),empty($str);

13. 結果セットの総数をクエリする関数は?

答え: mysql_num_rows($result) );

14. $arr = array('james', 'tom', 'symfony'); 最初の要素の値を出力してください

答え: echo $array[0];

15。質問 41 の配列の値を「,」記号で区切って文字列出力にマージします

答え: for($i=0; $i

16. $a = 'abcdef'; $a の値を取り出して最初の文字を出力してください

答え: echo $a{0} または echo substr($a,0,1)

17. PHP は SQL Server/oracle などのデータベースに接続できますか?

答え: もちろんです

18. PHP5 の権限制御修飾子を書き留めてください

答え: public (パブリック)、private (プライベート)、protected (継承)

19. PHP5 のコンストラクターとデストラクターを書いてください

答え:__construct、__destruct

20 ツールとは何ですか。バージョン管理に使用されますか?

CVSとSVN、SVNは次世代のCVSとして知られており、強力な機能を持っていますが、CVSは高いシェアを誇る古いブランドであり、問​​題はどのツールを使用するかです。これには次のように答える必要があるかもしれません: Apache 上の CVS サーバーがサーバーとして使用され、WinCVS がクライアントとして使用されます。Apache/DAV 上の Subversion がサーバーとして使用され、TortoiseSVN がクライアントとして使用され、または Subclipse が使用されます。クライアント

21. HTTP 1.0 では、ステータス コード 401 の意味は_ ___; プロンプト「ファイルが見つかりません」が返された場合、ヘッダー関数を使用でき、そのステートメントは ____ です。

答え: 401 は許可されていないことを意味します; header("HTTP/1.0 404 Not Found"); [リファレンスマニュアル》関数リファレンス》HTTP 関数を参照]

22 配列関数 arsort の関数は ____ です。 error_reporting(2047) の関数は____です。

答え: arsort: 配列を逆ソートし、インデックス関係を維持します。error_reporting(2047) の機能は次のとおりです: すべてのエラーと警告をレポートします

23. Web 上のすべての JS/VBS スクリプトをフィルターするための正規表現を記述します。ページ (つまり、script タグとそのコンテンツを削除します):

<?php
$script="以下内容不显示:<script language=&#39;javascript&#39;>alert(&#39;cc&#39;);</script>";
echo preg_replace("/<script[^>].*?>.*?</script>/si", "替换内容", $script);
?>

24. include ステートメントと require ステートメントは、次のことを避けるために現在のファイルに別のファイルを含めることができます。同じファイルが複数含まれている場合は、ステートメント ____ に置き換えることができます。

回答: 失敗を処理する場合、 include() は警告を生成し、 require() は致命的なエラーを引き起こします; require_once()/include_once();

25。なぜ?

$num =10;

function multiply(){

$num =$num *10;

}

multiply();

echo $num;

関数multiply()は指定されていません $num はグローバル変数 (global $num や $_GLOBALS['num'] など) であるため、$num の値は 10 です。

上記は私がオンラインでまとめた面接の質問であり、今後皆さんのお役に立てれば幸いです。

関連記事:

PHP 面接でよくある質問

以上がPHP 面接の質問 (古典)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。