Nemůžete přidat nové řádky do pole upozornění JavaScript?

Generuji řetězec v PHP a nakonec tento řetězec předávám do pole upozornění JavaScriptu, můj problém je, že ve skutečnosti nemohu do pole upozornění přidat zalomení řádků.

Můj kód vypadá následovně

$str = "This is a stringn";
$alert = $str."This is the second line"; 

    if(!empty($alert)){
        ?>
            <script type="text/javascript">
            $(document).ready(function() {
                alert('<?=$alert?>');
            });
        </script>
    <?php
}

Zobrazuje se mi chyba:

Neurčený řetězcový literál

Pokud odstraním n z řetězce funguje 100%, ale bez zalomení řádků.

Odpověď

To se děje, protože PHP interpretuje n dříve, než má JavaScript možnost, což má za následek skutečné zalomení řádku uvnitř kódu Javascript. Zkuste

\n