Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用PHP str_replace使用HTML标记替换htmlentities_Php_Html_Html Entities - Fatal编程技术网

如何使用PHP str_replace使用HTML标记替换htmlentities

如何使用PHP str_replace使用HTML标记替换htmlentities,php,html,html-entities,Php,Html,Html Entities,我有如下内容 我希望将转换为。但我没能做到。下面是一个例子 $content = "<pre>This is a pre text &#13; I want to convert it to paragraphs "; print_r(str_replace(array('<pre>', '</pre>', '&#13;'),array('<p>', '</p>', '<br/>'),htmlspecial

我有如下内容

我希望将
转换为

。但我没能做到。下面是一个例子

$content = "<pre>This is a pre text &#13; I want to convert it to paragraphs ";

print_r(str_replace(array('<pre>', '</pre>', '&#13;'),array('<p>', '</p>', '<br/>'),htmlspecialchars($content)));
$content = "<pre>This is a pre text &#13; I want to convert it to paragraphs ";

print_r(htmlspecialchars($content));

// returns    &lt;pre&gt;This is a pre text &amp;#13; I want to convert it to paragraphs 
<?php
    $content = "<pre>This is a pre text </pre> &#13; I want to convert it to paragraphs";
    print_r(htmlspecialchars(str_replace(array('<pre>', '</pre>', '&#13;'),array('<p>', '</p>', '<br/>'),$content)));
?>
$content=“这是预文本
;我想将其转换为段落”;
$content = "<pre>This is a pre text &#13; I want to convert it to paragraphs ";

print_r(str_replace(array('<pre>', '</pre>', '&#13;'),array('<p>', '</p>', '<br/>'),$content));

//returns    <p>This is a pre text <br/> I want to convert it to paragraphs 
打印(str_replace(数组(“”,“,”和#13;”)、数组(“”、“

”、“
”)、htmlspecialchars($content));

但我得到的是它的输出。有人能帮我解决这个问题吗。提前感谢

在替换字符串之前,您正在更改
$content

', ' '),数组(“”、“

”、“
”、$content)); //返回这是一个前置文本
我想将其转换为段落
通过执行以下操作,无需删除htmlspecialchars()函数即可获得所需的输出:

$content=“这是预文本
;我想将其转换为段落”;
$content = "<pre>This is a pre text &#13; I want to convert it to paragraphs ";

print_r(str_replace(array('<pre>', '</pre>', '&#13;'),array('<p>', '</p>', '<br/>'),$content));

//returns    <p>This is a pre text <br/> I want to convert it to paragraphs 
打印(str_-replace(数组('pre'、'/pre'、'&;'13;')、数组('p>'、'

'、'br/>')、htmlspecialchars($content));
您的代码应该是这样才能获得预期的输出



之间留出空间,然后尝试
htmlspecialchars
是罪魁祸首。在替换之前,您正在更改
$content
。因此我应该删除
htmlspecialchars
这是您所说的,除非“删除
htmlspecialchars()
”这几个字意思不同?或者先交换订单和strreplace,然后再交换htmlspecialchars。@doug说他希望结果是
/code>。这就实现了这一点
htmlspecialchars()
为他提供了
pre/pre
。我想他也需要转换字符串,不管是什么原因。这就是为什么他首先要使用htmlspecialchars的原因。这会给他
pre/pre
。在他的问题中,他说他想要
,他说他想把代码转换成

。我的代码就是这样做的。我刚刚演示了一种在不删除htmlspecialchars()函数的情况下获得结果的方法。请检查它,它可能与您所需的输出@jeeva匹配