Por alguma razão, cada post perguntando sobre escapes de nova linha no PHP não menciona o caso de que simplesmente inserir uma nova linha em strings de aspas simples fará exatamente o que você pensa:
ex 1.
echo 'foo\nbar';
O Exemplo 1 claramente não imprime o resultado desejado; no entanto, embora seja verdade que você não pode escapar de uma nova linha entre aspas simples, pode ter um:
ex 2.
echo 'foo
bar';
O exemplo 2 tem exatamente o comportamento desejado. Infelizmente, a nova linha inserida depende do sistema operacional. Isso geralmente não é um problema, pois os navegadores / servidores da Web interpretam corretamente a nova linha, seja \ r, \ r \ n ou \ n.
Obviamente, essa solução não é ideal se você planeja distribuir o arquivo por outros meios, como um navegador da web e vários sistemas operacionais. Nesse caso, você deve ver uma das outras respostas.
nota: usando um editor de texto rico em recursos, você poderá inserir uma nova linha como caractere (s) binário (s) que representa uma nova linha em um sistema operacional diferente daquele que edita o arquivo. Se tudo mais falhar, basta usar um editor hexadecimal para inserir o caractere ascii binário.