在PHP中,我需要在不剥离实体的情况下从editarea获取post数据


In PHP I need to get post data from editarea without it stripping entities

在我的应用程序(只是普通的PHP 5.5.X)中,我有一个编辑器,我想在其中添加文本中的html实体,例如&但当我在PHP中读取POST数据时,没有转换它们。$_POST$_REQUEST,以及调用file_get_contents("php://input")parse_str(),都会在我获取实体之前自动将其剥离。我需要将编辑器的原始内容存储到数据库中。除了我自己重写parse_str()以避免这种"帮助"之外,还有什么简单的方法可以让它发挥作用吗?

我正在一个html页面中创建文本,我需要完全按照输入的内容保存。如果我输入

test &

进入文本区域并发布表单这就是我在PHP中使用$_REQUEST或&amp_后

test &

调用

file_get_contents("php://input")

我看到

editarea=test+%26amp%3B

因此通过正常机制处理后数据将CCD_ 5替换为&

我认为这是通过nginx在虚拟机中的ubuntu1404上的普通php5.5.26。

想象一下,您已经编写了某种编程语言,并希望PHP不要理会您的语法。我可以用十六进制转换该区域,并用PHP自己解码,但这似乎真的很愚蠢。

我不确定是否有办法将实体保留在那里,但您可以在保存之前使用htmlentities($string);并将其转换回?