2015-09-03 3 views
1

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

Например,

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

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

+5

Оцените это самостоятельно. –

+0

Я бы не ожидал разницы. Парсер PHP может сказать, что он эквивалентен и должен генерировать один и тот же код. – Barmar

+0

действительно хотите понять, как php работает внутри? прочитайте исходный код. –

ответ

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"; 

Выходы:

первый пробег:

Yow YES 
4.1007995605469E-5 

Yow YES 
6.9141387939453E-6 

второй прогон:

Yow YES 
4.3869018554688E-5 

Yow YES 
8.8214874267578E-6 

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

+1

Обычный и простой, и не обязательно должен быть об этом. Хороший ответ. – Mauker

+2

есть сайт, на котором есть все тезисы о микро-оптимизации, ориентированные на php, http://www.phpbench.com/ –

+0

Woah, не знал этого! Спасибо @Dagon – Mauker

Смежные вопросы