【问题标题】:How can I insert a new line in sqlite in PHP?如何在 PHP 的 sqlite 中插入新行?
【发布时间】:2014-09-11 16:27:39
【问题描述】:

我正在使用 PHP 来在 sqlite 数据库中插入数据。

我有如下字符串:

$string =  "Good morning!<br />It is a wonderful day!<br />"

我想将所有出现的&lt;br /&gt; 替换为\n

为了替换 &lt;br /&gt;,我在 PHP 中执行了以下操作,但没有成功:

<?php
    $string =  "Good morning!<br />It is a wonderful day!<br />"
    $symbols =array('<br />');
    $replace_symbols = array('\\n');
    $string = str_replace($symbols, $replace_symbols,$string);
    //InsertIntoSqlite($db,$string);
?>

当我使用 SQLITE 管理器连接到 sqlite 数据库时,我看到数据库中插入了以下内容:

sqlite: Good morning!\nIt is a wonderful day!\n

我能做些什么来解决这个问题?

已解决:

我做了以下事情:

<?php

    $string = str_replace("<br />","\n",$string);

 ?>

【问题讨论】:

    标签: php sqlite insert newline


    【解决方案1】:

    '-quoted 字符串不支持 ANY 转义,但转义本身除外。 '\t' 不在制表符处,它是 \ 后跟 t。你想要"\n",这是一个实际的换行符。

    echo '\\ \t \n \r'; // spits out: \ \t \n \r
    echo "\\ \t \n \r"; // spits out \ [tab] [newline] [carriagereturn]
    

    【讨论】:

    • 那么,我需要使用双引号而不是单引号吗?
    • 是的,只有一个反斜杠。如果您只是盲目地将代码更改为"\\n",您仍然会在输出中得到\n,因为\\ 将首先被解析并简化为\,留下一个\ 和一个@ 987654332@ 字符串中的字符,而不是换行符。
    • 谢谢你,它对我有用!我现在可以在 sqlite 中看到新行了!
    • 嗨,我也遇到了同样的问题当我这样做时:$string = str_replace("&amp;quot;","'",$string);$string = str_replace("&amp;quot;","\'",$string); 我在 PHP 中收到以下错误:警告:SQLite3::exec(): near "the"无法插入,我该怎么做才能解决这个问题?谢谢
    猜你喜欢
    • 2017-10-23
    • 1970-01-01
    • 2014-02-12
    • 2017-07-25
    • 1970-01-01
    • 2012-04-19
    • 2018-04-23
    • 1970-01-01
    • 2011-05-14
    相关资源
    最近更新 更多