Avatar ·

Qual a diferença entre strings com aspas simples e duplas em PHP?

Olá a todos! Comecei a estudar PHP e me deparei com algo que não entendo. Vejo que strings podem ser declaradas tanto com aspas simples ('exemplo') quanto com aspas duplas ("exemplo"). Parece que o resultado é o mesmo — em ambos os casos é uma string. Mas notei um comportamento estranho. Aqui está um exemplo de código: ```php $name = "Ivan"; echo 'Olá, $name!'; // Exibe: Olá, $name! echo "Olá, $name!"; // Exibe: Olá, Ivan! ``` Por que no primeiro caso é exibido literalmente $name, e no segundo o valor da variável? Isso tem a ver com escaping? Tentei escrever echo 'Olá, \n'; — exibiu apenas \n, e não uma quebra de linha. Com aspas duplas, \n funciona como quebra de linha. Expliquem, por favor, qual é a diferença fundamental entre esses dois tipos de strings? Quando usar cada um? Há diferença de performance? E quanto a heredoc e nowdoc — também é sobre isso? Desde já agradeço pela ajuda! <<>>

Diferença principal: interpolação de variáveis e escape sequences