Я бы даже использовать <?php echo '<li><img src="' . $row['image'] . '" /></li>'; ?>
Там разница скорости, но это было бы едва измеримое и обычно вообще не заметно. Каждая строка в двойных кавычках сначала анализируется. Поэтому лучше не использовать двойные кавычки для строк. Если вы используете чрезвычайно много струн с vars в нем, это может стать измеримой разницей - но делать это было бы очень плохой дизайн в первую очередь.
Btw: То же самое верно для частого включения и выключения парсера с помощью <?php
и ?>
.
Основная причина для этого - хорошая практика кодирования.
Другие, возможно, также должны понимать ваш сценарий. И, может быть, и через несколько лет. Вары в строках могут быть проще пропущены, чем варны, включенные так. Тем более на IDE с подсветкой синтаксиса.
Я даже видел, как люди помещали новую строку перед каждым вар, вставленным таким образом. Но ИМХО это слишком много. ;)
Более или менее оффтоп: Нет, я не читал все бои происходит в других ответов, но я знаю, что старый «нет, это не медленнее» против «Да, это» детский сад на сердце. ;)
Для радости ради, вы кодеры, черт. Просто проверить:
<?php
$startt = microtime(true);
for ($i = 0; $i <= 10000000; $i++) {
$test = 'This is test number ' . $i;
// $test = "This is test number " . $i;
// $test = "This is test number $i";
}
$endt = microtime(true);
echo 'Used time: ' . ($endt - $startt);
?>
Для меня первый один дал 5.1321198940277, второй 5.2075009346008 и один 6.4821639060974 (разница более чем в 1,2 СЕК) третий. Что и требовалось доказать так далеко.
Интересным было бы попробовать это на разных системах. Возможно, я сделаю свой собственный вопрос.
Не забудьте применить к этим данным 'htmlspecialchars'. – Gumbo
Этот вопрос субъективен, поскольку ОП «хочет знать, что является лучшим методом» (из его комментария ниже), поскольку мелочь незначительной вещи принадлежит конвенции, а не лучшей практике. –