我正在使用PHP版本5.3并尝试mysql_real_escape_string($unescaped_string)在我的代码中使用,但是出现错误:
mysql_real_escape_string($unescaped_string)
Fatal error: Call to undefined function mysql_real_escape_string() in /var/www/engine/database.php on line 38
我仍然可以连接到数据库。为什么不可用?
我正在使用PHP版本5.3。
更新 中提到的评论,mysql_一直以来5.5弃用:
mysql_
自PHP 5.5起不推荐使用mysql扩展。应该改用mysqli或PDO扩展名。否决已在mysql_deprecation中确定,可以在此找到对该决定背后原因的讨论。
并 在PHP 7中删除 。
mysql_real_escape_string()是MySQL函数“批处理”的标准部分,如果扩展名正确加载,它应该始终可以正常工作。
mysql_real_escape_string()
还有其他mysql_功能吗?(不应该)
确保在您的中未注释此行php.ini:
php.ini
extension=mysql.so
同样明智的做法是使用mysqli或PDO代替(mysql_已弃用),它们俩都可以为您进行转义。
mysqli
PDO