Avatar ·

为什么不能在PHP中使用已废弃的mysql_*函数以及用什么替代?

大家好!我是一名初学PHP开发者,正在根据旧教材和YouTube视频学习。在所有示例中,连接MySQL数据库都是通过mysql_connect()、mysql_query()等函数完成的。我的代码运行正常,但我注意到现代教程中不再使用这些函数。此外,PhpStorm会用红色下划线标出它们并提示“Deprecated”。 以下是我目前编写代码的方式: ```php $link = mysql_connect('localhost', 'root', ''); mysql_select_db('myblog', $link); $result = mysql_query("SELECT * FROM users WHERE id = " . $_GET['id']); while ($row = mysql_fetch_assoc($result)) { echo $row['name']; } ``` 一切似乎都能运行,但我听说这很危险。您能用简单的话解释一下:为什么mysql_*是邪恶的?以及应该用什么替代?我不只需要“它们已过时”这种空话,而是具体原因。另外——如何正确重写我的代码,使其现代且安全? 提前感谢您的详细解答! <<>>

为什么mysql_*是