Возможный дубликат:
PHP: разные кавычки?
Простой вопрос:
В чем разница между «и» в php? Когда я должен использовать это?
В принципе, строки с одним кавычком представляют собой обычный текст практически без особого случая, тогда как строки с двойными кавычками имеют переменную интерполяцию (например, echo "Hello $username";
), а также экранированные последовательности, такие как «\ n» (новая строка).
Вы можете узнать больше о строках в руководстве PHP .
Для объявления строк используется три синтаксиса: PHP <= 5.2:
С одинарными кавычками:
переменные и escape-последовательности для специальных символов не будут расширены
Например :
echo 'Variables do not $expand $either';
Вывод:
Variables do not $expand $either
С двойными кавычками:
Наиболее важной особенностью строк с двойными кавычками является то, что имена переменных будут расширены.
Например :
$a = 10; echo "a is $a";
Вывод:
a is 10
И, с heredoc:
Текст Heredoc ведет себя как строка с двумя кавычками без двойных кавычек. Это означает, что цитаты в heredoc не должны быть экранированы,
Например :
$a = 10; $b = 'hello'; $str = <<<END_STR a is $a and "b" is $b. END_STR; echo $str;
Вы получите:
a is 10 and "b" is hello.
Любые переменные внутри «цитируемой строки» будут проанализированы. Любые переменные в «цитируемой строке» не будут анализироваться и будут отображаться буквально как имя переменной. По этой причине «цитируемые строки для процесса PHP очень немного быстрее.
$test = 'hello'; echo "this is a $test"; // returns this is a hello echo 'this is a $test'; // returns this is a $test
Я бы сказал, используйте «цитаты», если вы не хотите, чтобы переменные внутри ваших строк.
Разница заключается в том, что строки между двойными кавычками (") анализируются для замены переменных и escape-последовательности. Строки в одинарных кавычках (') не являются.
Итак, используя двойные кавычки ("), вы можете сделать:
$count = 3; echo "The count is:\t$count";
который будет производить
The count is:<tab>3
То же самое в одинарных кавычках возвращает литеральную строку.
Кроме того, символы, которые должны быть экранированы. Если у вас есть строка вроде:
'John said, "Hello"'
вы, вероятно, будете использовать одинарные кавычки, чтобы избежать необходимости избегать цитат в строке и наоборот.
«интерпретирует escape-символы и переменные».
Одним словом: когда вы хотите, чтобы все ваши специальные символы (например, \ n ) и переменные (например, $ number ) были замечены и обработаны.