Одиночные и двойные кавычки обрабатываются немного по-другому в PHP. Читайте дальше, чтобы увидеть различия в том, как они оцениваются.
Одинарные кавычки
Одиночные кавычки имеют тенденцию анализировать вещи в гораздо более буквальном смысле. Например, возьмите следующее:
$ test = "BOOOM"; echo '$ test'
Имя переменной, помещенное в одинарные кавычки, не анализируется с ее фактическим значением. Вот что на самом деле печатается при запуске этой простой PHP-программы:
$ тест
Есть только 2 сценария, которые я могу придумать, где информация фактически анализируется в одной строке в кавычках. Во-первых, для отображения одного символа в кавычках ему должен предшествовать обратный слеш. В противном случае это будет интерпретироваться как конец вашей строки. Во-вторых, чтобы отобразить обратную косую черту, ей должна предшествовать другая обратная косая черта. Пример:
echo 'одинарная кавычка: \' '; echo 'обратная косая черта: \\';
Двойные кавычки
Двойные кавычки имеют тенденцию разбирать вещи для вас. При запуске между двойными кавычками:
$ test = "BOOOM"; echo "$ test"
Он выводит фактическое значение переменной:
BOOOM
Теперь иногда вы сталкиваетесь со сценарием, в котором имя переменной, которую вы пытаетесь вывести, может быть проанализировано неправильно из-за некоторых окружающих символов.
$ test = "BOOOM"; echo "$ test";
Как вы думаете, что получится здесь? Ответ ничто. PHP ищет переменную с именем $ test, и, поскольку она не существует, ничего не выводится. Правильный способ вывести значение, за которым следует 'ed':
$ test = "BOOOM"; echo "{$ test} ed";
Заключая его в фигурные скобки, он позволяет PHP знать, где переменная начинается и останавливается, что позволяет ей правильно оценивать переменную.
Разница в скорости
Я провел несколько простых тестов, чтобы оценить некоторые различия, разница в скорости между ними незначительна. Одиночные кавычки были немного быстрее из-за того, что им не нужно искать переменную, а затем анализировать значение, но я никогда не сталкивался со сценарием, в котором он имел бы достаточно значения, чтобы иметь значение. Используйте то, что соответствует вашим текущим потребностям.