编辑:我已经非常正确地指出,我对此问题的原始态度是关注错误的问题。我现在重组它以专注于根本原因而不是我的具体目标。我会继续用我尝试的方式更新问题。
我正在Laravel 4中构建一个应用程序,该应用程序将部署在生产服务器上,该服务器当前正在向添加到数据库的任何字符串添加转义斜杠。 (这不是在我的本地开发环境中发生的)。我已经尝试通过在PHP配置中禁用magic_quotes_gpc
但是它已经被禁用来调查是否可以防止这种情况发生。
最好能够解决此问题的根本原因。为此,我们将非常感激地收到有关其他配置选项可能导致问题的任何指示。我将继续自己研究这个问题,并将问题与我的尝试保持同步。
我最初的问题是如何找到一种在模型级别应用stripslashes()
的方法,以便转义字符至少出现在我的视图中。理想情况下,我希望这不是必要的,但如果可以实现,我不能排除将其作为短期补救措施。
答案 0 :(得分:2)
代替能够防止这种情况发生,我需要找到一种方法来确保所有文本输出都删除了斜杠。我的代码库已经相当大,因此手动剥离每个字段的斜杠都是非常不切实际的。
所以不要在第一次运行中添加它们。这里没有什么可讨论的,在服务器上找到问题并清理乱七八糟的东西。它可能花费你一两天(实际上通常要快得多),但这不会花费你插入一个令人沮丧的幻想层,它会打断你不想要的扩展输入。从长远来看,这只会花费你几天。
只是一个很好的意思提醒:谁告诉你stripslashes()
实际上完全可以完全反转魔法发生的斜线的应用,而你到目前为止还不知道哪里它来自哪里?
公平地说,告诉所有你在黑暗中行动的人,你现在想要收集最好的建议,你将选择你认为合适的建议(同时仍然在黑暗中)。取而代之的是获得光明。否则你正在追逐鬼魂,这可能会让你很难畏缩。闹鬼的服务器斜线鬼:D
答案 1 :(得分:1)
事实证明,当我检查magic_quotes_gpc
的状态时,我错了。当我查看phpinfo()
时,它被标记为仍然启用,而WHM的PHP配置编辑器将其显示为“ Off ** DEFAULT **”。
手动将其设置为“关闭”解决了问题