0

何百万もの顧客にサービスを提供すると思われる、非常に時間に敏感な本番アプリケーションを作成しています。

サーバー側は php で書かれており、約 5 から 25 文字の長さの約 200 個の定義済み文字列を含むいくつかのファイルがあり、それらはすべて二重引用符で囲まれており、変数は含まれていません。例えば:

 define("DEFCON_ONE", "id");
 define("DEFCON_TWO", "name");
 .......

これらの文字列を二重引用符から単一引用符に変更すると、実際に CPU サイクルが節約されますか?

これらのアプリケーションは非常に時間に敏感なので、その場合は各ファイルと各コード行を変更しますが、すべてを変更する前に確認したいだけです.

ありがとうございました。

4

2 に答える 2

0

パフォーマンスへの影響は、存在する場合でも無視できます。一重引用符に含まれるものは変数や特殊文字に対して解析されないため、一重引用符の方が高速であると言われています。二重引用符としてのWHereは、特殊文字と変数を解析します。例えば:

$var = 'world';

echo 'hello\n$var';

echos:
hello\n$var

echo "hello\n$var";

echos
hello
world

個人的には、文字列で特殊文字や変数を使用していない場合は、一重引用符を使用します。それ以外の場合は、二重引用符を使用します。しかし、パフォーマンスはこれについて心配する必要はありません。私の友人の時期尚早の最適化。

于 2013-02-05T11:38:33.077 に答える
0

マイクロ最適化の方法では、はい。

二重引用符は、文字列内に変数がない場合でも PHP に強制的に解析させます。

しかし、心配しないでください。マイクロ最適化を攻撃する前に、コードを最適化する方法がたくさんあります:)

于 2013-02-05T11:54:20.193 に答える