Google は、Google Code が作成した「Let's make the web fast」Web サイトで、Web ページのパフォーマンス最適化に関するいくつかのヒント、チュートリアル、ツールを共有しています。今日は、ヒント記事「PHP パフォーマンス最適化テクニック、私も知りません」を翻訳します。彼が挙げた5つのテクニック。
1. 変数をコピーするだけではない
時々、PHP コードを整理するために、PHP 初心者の中には、定義済みの変数を短い名前の変数にコピーする人がいます。実際、その結果、メモリ消費量が 2 倍になり、プログラムが大きくなるだけです。さらに遅くなります。次の例で、ユーザーが悪意を持って 512KB のテキストをテキスト入力ボックスに挿入すると、1MB のメモリが消費されると想像してください。
悪い:
$description = $_POST[説明];
$description をエコー;
良い:
echo $_POST[説明];
2. 文字列には一重引用符を使用します
PHP エンジンでは、一重引用符と二重引用符を使用して文字列変数をカプセル化できますが、大きな違いがあります。二重引用符で囲まれた文字列を使用すると、PHP エンジンはまず文字列の内容を読み取り、その中の変数を見つけて、変数に対応する値に変更するように指示されます。一般に、文字列には変数がないため、二重引用符を使用するとパフォーマンスが低下します。二重引用符で囲まれた文字列の代わりに文字列連結を使用することをお勧めします。
悪い:
$output = "これはプレーンな文字列です";
良い:
$output = これはプレーンな文字列です;
悪い:
$type = "混合";
$output = "これは $type 文字列です";
良い:
$type = 混合;
$output = これは $type です。
3. echo関数を使って文字列を出力します
echo() 関数を使用すると読みやすくなるだけでなく、次の例ではパフォーマンスが向上することもわかります。
悪い:
print($myVariable);
良い:
エコー $myVariable;
4. echo でコネクタを使用しないでください
多くの PHP プログラマ (私を含む) は、stink で複数の変数を出力する場合、以下の最初の例のように最初に文字列で連結する代わりに、実際にはカンマを使用して変数を区切ることができることを知りません。コネクタを使用します。これは、PHP エンジンが最初にすべての変数を接続してからそれらを出力する必要があるためです。2 番目の例では、PHP エンジンはそれらを順番に出力します。
悪い:
echo こんにちは、$firstName です。$city;
に住んでいます。
良い:
echo こんにちは、私の名前は $firstName 、 $lastName で、 $city に住んでいます;
5. if/else の代わりに switch/case を使用します
変数が 1 つだけの場合は、if/else ステートメントの代わりに switch/case ステートメントを使用するとパフォーマンスが向上し、コードが読みやすく保守しやすくなります。
悪い:
if($_POST[アクション] == 追加) {
addUser();
elseif ($_POST[アクション] == 削除) {
deleteUser();
elseif ($_POST[アクション] == 編集) {
editUser();
} その他 {
デフォルトアクション();
}
良い:
switch($_POST[アクション]) {
ケース追加:
addUser();
休憩
ケースの削除:
deleteUser();
休憩
ケース編集:
EditUser();
休憩
デフォルト:
デフォルトアクション();
休憩
}