【问题标题】:Edit RTF, literal text in PHP在 PHP 中编辑 RTF,文字文本
【发布时间】:2022-07-22 23:55:13
【问题描述】:

我正在创建一个编辑 .rtf 文件的系统

使用纯文本进行编辑

我想在我的 php 代码中添加一些字符串,以插入来自系统的 rtf 中

 $ReplaceDois = "{\rtlch\fcs1 \af1\afs24
\ltrch\fcs0 \b\fs24\cf0\cgrid0\insrsid5259994\charrsid5461623 A \endash QUALIFICA'c7'c3O DAS PARTES\par}"

这只是一个例子,但我需要插入这样的长文本

问题是php不能按字面意思解释

当我使用双引号时 我有问题

\r \f 等

当我使用单引号时 我有问题

QUALIFICA'c7'c3O

有什么办法可以让我的字符串在文本中没有转义

编辑这些文件的过程有点复杂,所以我希望能够从 rtf 文件中获取文本并将其粘贴到我的代码中

感谢您的帮助

【问题讨论】:

  • 你看\r\n是保留的东西,用来在字符串中添加换行符——还有更多。如果您想在使用单引号定义的字符串中写入单引号(例如'my \'text\' in single quote'),则可以使用反斜杠。同样的方法适用于双引号。如果您想使用文字反斜杠,则必须使用另一个反斜杠 (\\) 对其进行转义。
  • 啊,我想也许我有一个来自 vb.net 的命令 ` Dim jsScript As String = .Value `跨度>
  • afaik,CDATA 是 xml 而不是 vb.net 的一部分。

标签: php string rtf


【解决方案1】:

使用 heredoc 字符串:

$ReplaceDois = <<<'eortf'
{\rtlch\fcs1 \af1\afs24
\ltrch\fcs0 \b\fs24\cf0\cgrid0\insrsid5259994\charrsid5461623 A \endash QUALIFICA'c7'c3O DAS PARTES\par}
eortf;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-18
    相关资源
    最近更新 更多