php - 如何使用 PHP 将带有换行符的文本字符串保存到 MySQL 数据库文本字段?

标签 php mysql line-breaks

在 SugarCRM 中,我有一个 Textarea 字段,我试图用换行符将数据保存到该字段。

如果我插入 <br>标签,然后它们显示为文本中断标签。如果我尝试类似 \n 的东西然后它也显示为文本。

现在,如果我进入 SugarCRM 并编辑一条记录,我可以输入文本并换行。保存记录并再次查看,换行符会按照我希望的方式显示!

我正在尝试将带有换行符的数据从远程 API 脚本保存到同一字段。

我使用 phpMyAdmin 进入数据库,查看该字段的外观,它就在这里......

前 3 行有适当的换行符,这是我在 SugarCRM 中手动编辑记录时所做的。

后面的行来 self 保存的远程 API 脚本 <br>标记到字符串中。

Line 1 Text: ghfghdf
Line 1 Color: #0064FF
Line 1 Font: Architect
Line 2 Text: fghfg<br /> Line 2 Color: #9F00FF<br /> Line 2 Font: Belshaw<br /> Line 3 Text: fghdhdhdf<br /> Line 3 Color: #FF5000<br /> Line 3 Font: Benguiat<br />

有什么想法可以让我的 PHP 代码将字符串保存到该字段并在数据库中查看它时像上面的前 3 行一样有换行符吗?

最佳答案

comments 中的建议, 这种问题往往与以下事实有关 single quoted strings :

To specify a literal single quote, escape it with a backslash (\). To specify a literal backslash, double it (\\).

All other instances of backslash will be treated as a literal backslash: this means that the other escape sequences you might be used to, such as \r or \n, will be output literally as specified rather than having any special meaning.

但在double quoted strings :

PHP will interpret more escape sequences for special characters

sequence : \n then having the meaning of linefeed (LF or 0x0A (10) in ASCII)

所以 echo '\n' 会打印出 \necho "\n" 将允许您在异常(exception)情况下换行。

当然,您也可以使用 PHP_EOL 使其跨操作系统。

关于php - 如何使用 PHP 将带有换行符的文本字符串保存到 MySQL 数据库文本字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29723917/

相关文章:

c++ - 将以\r\n 分隔的字符串拆分为字符串数组 [C/C++]

php - setInterval 函数期间 $_SESSION 变量检查后 div 元素未隐藏

php - X 天数内减少数量的分布

c# - Linq Sum() 精度

mysql - Ruby:解析时间字符串以在 MySql 中接受为有效的日期时间

java - 从 HTML 复制/粘贴到 MS Excel 时如何处理换行符

php - 无法在 Eloquent 多态关系中获取数据

php - 在 codeigniter 中按 COUNT 分组使数据库错误

php - 如何限制用户只能向MySQL插入数据1次

java - 将字符串写入文件时如何换行?