是否值得将我的代码更改为“更便携”并能够处理魔法引号的恐怖,或者我应该确保它始终通过.htaccess文件关闭?
if (get_magic_quotes_gpc()) { $var = stripslashes($_POST['var']); } else { $var = $_POST['var']; }
与
PHP_flag magic_quotes_gpc off
不适应这两种情况.两个代码路径=头痛的两倍,而且很有可能你会滑倒并忘记在某处处理这两种情况.
原文链接:https://www.f2er.com/php/136002.html我曾经检查魔术引号是否开启,如果它们打开,撤消它们的魔法(正如线程中的其他人建议的那样).这个问题是,你正在改变另一个程序员可能期望的配置环境(无论多么愚蠢).
这些天我编写的代码好像魔术引号已关闭,在我的主要include / bootstrap / always-runs文件中,我检查魔术引号是打开还是关闭.如果他们在,我会抛出一个异常,解释为什么这是一件坏事,并提供关于如何关闭它们的说明.
这种方法允许您对单个行为进行编码,鼓励其他人使用您的代码正确配置他们的服务器(魔术引号在PHP 6中消失),如果有人真的需要魔术引号,他们可以处理您的异常并夺走他们的生命掌握在自己手中.