在我的应用程序(只是普通的PHP 5.5.X)中,我有一个编辑器,我想在其中添加文本中的html实体,例如&但当我在PHP中读取POST数据时,没有转换它们。$_POST
和$_REQUEST
,以及调用file_get_contents("php://input")
和parse_str()
,都会在我获取实体之前自动将其剥离。我需要将编辑器的原始内容存储到数据库中。除了我自己重写parse_str()以避免这种"帮助"之外,还有什么简单的方法可以让它发挥作用吗?
我正在一个html页面中创建文本,我需要完全按照输入的内容保存。如果我输入
test &
进入文本区域并发布表单这就是我在PHP中使用$_REQUEST或&_后
test &
调用
file_get_contents("php://input")
我看到
editarea=test+%26amp%3B
因此通过正常机制处理后数据将CCD_ 5替换为&
我认为这是通过nginx在虚拟机中的ubuntu1404上的普通php5.5.26。
想象一下,您已经编写了某种编程语言,并希望PHP不要理会您的语法。我可以用十六进制转换该区域,并用PHP自己解码,但这似乎真的很愚蠢。
我不确定是否有办法将实体保留在那里,但您可以在保存之前使用htmlentities($string);
并将其转换回?