0

我正在编写一些真正对时间敏感的生产应用程序,它应该为数百万客户提供服务。

服务器端是用 php 编写的,并且有一些文件包含大约 200 个预定义字符串,长度约为 5 到 25 个字符,这些字符串都是双引号,其中没有任何变量。例如:

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

将这些字符串从双引号更改为单引号是否真的节省了一些 CPU 周期,因为 php 解释器不会搜索 \n 或其中的变量?

这些应用程序对时间非常敏感,所以如果是这种情况,我会去更改每个文件和每一行代码,但我只想在去更改所有内容之前确定。

谢谢你。

4

2 回答 2

0

In a micro optimization way, yes.

Double quotes force PHP to parse it even if there aren't variables inside the string.

But don't worry, we have a lot of ways to optimize our code before to attack micro optimizitaion :)

于 2013-02-05T11:54:20.193 回答
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 回答