PHP 関数の addslashes を使用すると、一重引用符や改行などをエスケープできます。問題は、アラート ボックスに実際の改行を作成できないことです。バックスラッシュ nを二重のバックスラッシュ nに置き換えようとしましたが、アラート ボックスに文字通り「\n」と表示されます。
<?php $this->info = "Hello ' world\nNew line"; ?>
<script type="text/javascript">
$(document).ready(function() {
alert('<?php echo addslashes($this->info); ?>');
});
</script>