ホームページ  >  記事  >  PHP のセキュリティ経験に関連する面接での質問トップ 10 のまとめ

PHP のセキュリティ経験に関連する面接での質問トップ 10 のまとめ

PHP中文网
PHP中文网オリジナル
2018-06-04 20:23:0711021ブラウズ

関連おすすめ: 「2019年PHP面接質問まとめ(集)

1 MySQLデータベースは公開システムのストレージとして使用されており、1日あたり50,000アイテム以上の増加が見込まれています3年間運用・維持するにはどうすれば最適化できるのか?

a. 効率を向上させるために、適切に設計されたデータベース構造を設計し、部分的なデータの冗長性を許可し、結合クエリを避けるようにしてください。
b. 適切なテーブル フィールドのデータ型とストレージ エンジンを選択し、インデックスを適切に追加します。
c. mysql ライブラリは、マスターとスレーブの読み取りと書き込みを分離します。
d. 通常のテーブルを見つけて 1 つのテーブル内のデータ量を減らし、クエリ速度を向上させます。
え。 memcached、apc などのキャッシュ メカニズムを追加します。
f. 頻繁に変更されないページには静的ページを生成します。
g. 効率的な SQL を作成します。たとえば、SELECT * FROM TABEL は SELECT field_1, field_2, field_3 FROM TABLE に変更されます。

2 トラフィックの多い Web サイトの場合、ページ訪問の統計の問題を解決するためにどのような方法を使用しますか

a。サーバーはそれをサポートできます。 現在の訪問数。
b. データベースアクセスを最適化します。
c. 画像のホットリンクなど、リンクへの外部アクセス (ホットリンク) を禁止します。
d. ファイルのダウンロードを制御します。
e. 異なるホストを使用してトラフィックを分散します。
f. 閲覧統計ソフトウェアを使用して訪問数を把握し、対象を絞った最適化を実行します。

3 Web ページ上のすべての JS/VBS スクリプトをフィルタリングする (つまり、タグとその内容を削除する) ための正規表現を作成します

答え:

PHP

/<[^>].*?>.*?<\/>/si

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

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

5 echo(),print (),print_r( )

答え: echo は戻り値のない言語構造です。print 関数は基本的に echo と同じですが、print は戻り値のある関数であり、配列オブジェクトを出力するために使用されます。

6

文字列反転を実装するには?

答え: strrev 関数を使用してください。PHP の組み込み関数を使用することはできません。自分で記述してください:

strrev($str)  
{  
    $len=strlen($str);  
    $newstr = &#39;&#39;;  
    for($i=$len;$i>=0;$i--)  
    {  
        $newstr .= $str{$i};  
    }  
    return $newstr;  
}

7

文字化けせずに中国語のテキスト文字列をインターセプトする方法。

答え: mb_substr()

8

PHP 環境変数を使用して Web ページアドレスのコンテンツを取得するにはどうすればよいですか? IPアドレスを取得するにはどうすればよいですか?

答え: $_SERVSR['REQUEST_URI'], $_SERVER['REMOTE_ADDR']

9

2007-2-5 ~ 2007-3-6 の日付の違いなど、2 つの日付の違いを見つけます

答え: (strtotime('2007-3-6')-strtotime('2007-2-5'))/3600*24

10

JavaScriptでウィンドウがブロックされているかどうかを判断する方法

答え: open()の戻り値を取得、nullの場合はブロックされます

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