mysqli_connect查询之间有什么区别

时间:2018-01-09 07:07:16

标签: mysqli

之间有什么区别
  1. $link = mysqli_connect($dbhost, $dbuser, $dbpass);

  2. $conn = mysqli_connect($dbhost, $dbuser, $dbpass) or die(mysqli_error($link));

2 个答案:

答案 0 :(得分:2)

$link = mysqli_connect($dbhost, $dbuser, $dbpass);

$conn = mysqli_connect($dbhost, $dbuser, $dbpass) or die(mysqli_error($link));

mysqli_error返回上一个错误的字符串描述

高于$link和$ conn两个变量都是相同的进位连接对象,但在第二个$conn情况下,当出现一些错误,然后连接死亡并生成mysqli上一个错误

答案 1 :(得分:1)

这两行之间的唯一区别是,如果您关闭了mysqli错误报告并且无法建立连接,则第一个mysqli_connect将返回null并继续进行,就好像什么都没发生,而第二个将杀死脚本并泄漏您的敏感凭据。

请勿使用任何一个。通过mysqli类进行连接的正确方法是:

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = new mysqli('localhost', 'user', 'pass', 'db');
$link->set_charset('utf8mb4'); // always set the charset

仅三行,没有dieif语句。

首先,您需要为mysqli启用错误报告,然后创建此类的实例,最后设置正确的字符集。