Что является более эффективным: конкатенация строк или подстановка?

1

Я пытаюсь сделать мою программу максимально возможной на сервере. Было бы лучше использовать двойные кавычки и включать переменную или использовать одинарные кавычки и использовать. для подключения переменных?

Например,

$string = 'Hello ' . $first_name;
$string_two = "Hello $first_name";

Какой путь был бы быстрее? Я понимаю, что это минимально, но я думаю, что это поможет мне разобраться в том, как PHP работает внутри.

  • 5
    сравните это сами.
  • 0
    Я бы не ожидал никакой разницы. Парсер PHP может сказать, что они эквивалентны и должны генерировать один и тот же код.
Показать ещё 2 комментария
Теги:
microbenchmark

1 ответ

8
Лучший ответ

Мне стало любопытно, так что... Хотя ОП: вы можете понять это с правильным вопросом.

<?php

$a = 'YES';

$start_time = microtime(TRUE);
$test = "Yow $a";
echo $test . "\n";
$end_time = microtime(TRUE);
echo $end_time - $start_time;

echo "\n\n";

$start_time = microtime(TRUE);
$test = 'Yow ' . $a;
echo $test . "\n";
$end_time = microtime(TRUE);
echo $end_time - $start_time;

echo "\n\n";

Выходы:

1-й прогон:

Yow YES
4.1007995605469E-5

Yow YES
6.9141387939453E-6

2-й прогон:

Yow YES
4.3869018554688E-5

Yow YES
8.8214874267578E-6

Поэтому, используя одинарную кавычку, тогда конкатенация лучше.

  • 1
    Просто и ясно, и не должно быть как об этом. Хороший ответ.
  • 2
    есть сайт, на котором есть все эти микрооптимизации для php, phpbench.com
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню