在 PHP 中混合 MySQL API
MySQL PHP API 提供了两个与 MySQL 数据库交互的接口:mysql_ 和 mysqli_。虽然混合这些 API 看起来很方便,但严格不鼓励这种做法。
不能混合 API
从根本上说,mysql_ 和 mysqli_ 是具有不同架构且不兼容的独立 API资源类型。因此,您无法在另一个 API 创建的资源上使用一个 API 中的函数。
示例错误
提供的示例代码演示了尝试混合这两个 API 时出现的问题API:
$con=mysql_connect("localhost", "root" ,"" ,"mysql"); if( mysqli_connect_errno( $con ) ) { echo "failed to connect"; }else{ echo "connected"; } mysqli_close($con); // Error: Incompatible resource type
此代码尝试在由以下命令创建的资源上使用 mysqli_connect_errno() mysql_connect(),导致不匹配。
检查连接有效性
要检查连接是否有效,请使用相应API的错误报告函数:
结论
至关重要使用不同的 MySQL 接口时遵守 API 边界。使用不兼容的函数或资源可能会导致错误和不可预测的行为。
以上是为什么我应该避免在 PHP 中混合使用 `mysql_` 和 `mysqli_` API?的详细内容。更多信息请关注PHP中文网其他相关文章!