php - 如何消除PHP中的反斜杠

标签 php javascript jquery ajax encode

我用 javascript 构建了我的 xml 文件,我用这样的警告正确地显示了它:

<Voitures>
   <voiture par1="4" par2="1" par3="0"/>
   <voiture par1="3" par2="0" par3="0"/>
</Voitures>

但问题是当我用 ajax 将它发送到一个 php 文件时,我得到了这个结果:

<Voitures>
   <voiture par1=\"4\" par2=\"1\" par3=\"0\"/>
   <voiture par1=\"3\" par2=\"0\" par3=\"0\"/>
</Voitures>

谢谢

最佳答案

您的 PHP 配置有 magic quotes已启用,这是一个已弃用的设置,任何人都不应该再使用了。它已在 PHP 5.4 中删除。 立即禁用它,否则您可能会编写在升级到 PHP 5.4 时行为不正确的代码。

如果不可能,请使用 stripslashes()在用它做任何其他事情之前的值(value)。 仅当您确实无法禁用魔术引号时才这样做。开发启用魔术引号的 PHP 软件是一个非常非常糟糕的主意。


如果您正在尝试编写好的代码并面向 future ,请将其放在每个文件的顶部,或者将其放在随处使用的一些常见包含文件中:

if (get_magic_quotes_gpc()) {
    trigger_error("Magic quotes are enabled; please disable them.", E_USER_ERROR);
}

如果启用了魔术引号,这将使您的应用程序简单地拒绝运行。

如果您有选择,请随您的应用程序一起发送一个包含以下内容的 .htaccess 文件:

php_flag magic_quotes_gpc Off

如果可能的话,这将在您的整个应用程序在 Apache 上部署时禁用魔术引号。如果 Apache 配置不允许 .htaccess 文件中的 php_flag 指令,那么这将导致 HTTP 500 错误,这比让您的应用程序在启用魔术引号的情况下运行要好得多。

关于php - 如何消除PHP中的反斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12325381/

相关文章:

javascript - wordpress子主题中错误的排队脚本顺序

php - jQuery/Ajax 请求被发送两次

javascript - GWT 检查是否安装了 flash

javascript - 在 Liferay 7.2 中实现自动保存网页内容为草稿

jquery ui 对话框在按钮前面添加图像

php - 代码点火器 : Unable to load the requested file:

javascript - Firefox 后退按钮无法与 Google 广告正常配合

javascript - jQuery for ajax 调用循环并等待所有操作完成

jquery - 使用 jQuery 通过 .ajax 来提醒 HTML 元素

javascript - jquery 删除选中的类,但在 php 中,复选框位于 $_POST 中