所以我对nl2br有一些奇怪的问题,所以我有以下代码:
var infowindow = new google.maps.InfoWindow({
content: "<?= nl2br($store["Stores"]["address"]) ?>"
});
查看浏览器源时的输出如下图所示:
正如您所看到的,
<br />
已经被正确地引入,但是由于某些原因,行仍然中断,这会导致javascript错误。变量值是从表单的文本区域输入发布的
最佳答案
从documentation中的示例可以看出,这似乎是有意的行为。如果要替换所有换行符以使字符串变成一行,则应该使用简单的正则表达式。这就是我要尝试的方式(从我的脑子里打出来,这是不测试的):
<?= preg_replace('/(\r\n|\n|\r)/','<br/>',$store["Stores"]["address"]) ?>