صحبت من اینجا راجب پرفورمنس نیست:
در این مقاله به نویسندگی julien pauli که از کامیتر های PHP و نویسندگان phpinternalsbook هم هست، در قسمت performance-tips بر طبق opcode تولید شده گفته که پرفورمنس:
بیشتر از پرفورمنس
هستش...
یعنی پرفورمنس نمایش و الحاق رشته توسط کاما , بیشتر از از الحاق رشته توسط نقطه . هستش چون در نوع اول عملیات concat انجام نمیگیره و صرفاً دوبار ECHO داخلی صورت میگیره
درحالی که من یه بنچمارک ساده گرفتم(PHP 5.6) و برعکس این قضیه رو ثابت کرده:
echo $var . $var2
0.16900992393494
0.17300987243652
0.17901015281677
0.18001103401184
0.18101096153259
echo $var, $var2
0.33201909065247
0.33201903065247
0.34201913065147
0.34401109065247
0.35201909161243
نکته دیگه اینجاست که token/lexical کد تولید شده هردو یکیه اما opcode تولید شون(توسط اکستنشن VLD) متفاوته!
کد lex/token هر دو:
داستان چیه
در این مقاله به نویسندگی julien pauli که از کامیتر های PHP و نویسندگان phpinternalsbook هم هست، در قسمت performance-tips بر طبق opcode تولید شده گفته که پرفورمنس:
کد پیاچپی:
echo $var, $var2
کد پیاچپی:
echo $var . $var2
یعنی پرفورمنس نمایش و الحاق رشته توسط کاما , بیشتر از از الحاق رشته توسط نقطه . هستش چون در نوع اول عملیات concat انجام نمیگیره و صرفاً دوبار ECHO داخلی صورت میگیره

echo $var . $var2
0.16900992393494
0.17300987243652
0.17901015281677
0.18001103401184
0.18101096153259
echo $var, $var2
0.33201909065247
0.33201903065247
0.34201913065147
0.34401109065247
0.35201909161243

کد lex/token هر دو:
کد پیاچپی:
T_OPEN_TAG <?php
T_VARIABLE $foo
T_CONSTANT_ENCAPSED_STRING "foo"
T_WHITESPACE
T_VARIABLE $bar
T_CONSTANT_ENCAPSED_STRING "bar"
T_WHITESPACE
T_ECHO echo
T_WHITESPACE
T_VARIABLE $foo
T_VARIABLE $bar
T_WHITESPACE
T_CLOSE_TAG ?>
داستان چیه
