Конкатенация строк в PHP (с переменной внутри), какая из них имеет лучшую производительность?

У меня есть эти два кода в PHP:

$msgs = 5;
//These two types of string concatenation

echo 'You got ' . $msgs . ' messages';

echo "You got $msgs messages";

-2

Решение

Давайте сделаем новый тест, это действительно просто

Живой пример

Тестовое задание

<?
$str1 = $str2 = "";

for ($i=0; $i < 10000; $i++) {
$start = microtime(true);
$str1 .= 'You got ' . $i . ' messages';
$str1_test[] = microtime(true) - $start;
}

echo "Dotted: " . ($str1_result = array_sum($str1_test) / 10000);

echo PHP_EOL;

for ($i=0; $i < 10000; $i++) {
$start = microtime(true);
$str2 .= "You got {$i} messages";
$str2_test[] = microtime(true) - $start;
}

echo "Interpolated: " . ($str2_result = array_sum($str2_test) / 10000);
echo PHP_EOL . ($str2_result < $str1_result ? "Interpolation" : "Dot") . " is faster!";

Результат

Dotted: 1.1234998703003E-6
Interpolated: 1.2600898742676E-6
Dot is faster!

Реальный факт

Разница в том, чтобы быть маленькой, чтобы быть значимой, мне лично нравится интерполяция, она элегантна и быстрее читается, решать только вам! 😉

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]