换行导致代码中断

Linebreak causes code to break

本文关键字:中断 代码 换行      更新时间:2023-09-26

我有一个文本存储在数据库中(之后,它是由用户在文本区输入)。

文本包含换行标记。

现在我将它导入到我的php页面,并执行以下操作:

$str += "onclick='openXXX('"" . nl2br($row->data)  .  "'");'>"

现在在视图中它破坏了我的代码,因为有<BR>'r'n字符(我认为),它看起来是:

onclick='openXXX("dsadas<br />
dsada");'

在我的代码中引起了问题,因为有两行而不是一行。我怎么解它?

use

str_replace(''r'n', '', nl2br($row->data))

Javascript不接受换行符,你可以这样考虑:-

str_replace(PHP_EOL, '', nl2br($row->data));
PHP_EOL旁边的

可以替换为'r'n, 'n'r, 'n and 'r

数组

nl2br正在添加<br/>,但未删除'r或'n。

试题:

$str += "onclick='openXXX('"" . str_replace(array("'r","'n"),'',nl2br($row->data))  .  "'");'>"

试试str_replace(''n', '', nl2br($row->data))而不是nl2br($row->data)