为什么不能在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_*是邪恶的?以及应该用什么替代?我不只需要“它们已过时”这种空话,而是具体原因。另外——如何正确重写我的代码,使其现代且安全?
提前感谢您的详细解答!
<<>>