我将MySQLi连接文件包含在PHP类的构造函数中。由于我需要在此类的方法中访问连接变量,因此我需要使变量全局化。我总是听说全局变量不好。所以我想知道,这是处理这个问题的唯一/最好的方法吗?
class CheckUser {
function __construct() {
require_once('mysqli.php');
}
function checkEmail($email) {
// sql code here
}
}
这只是一个模因。(依赖注入即将到来...
连接句柄是中心资源。这样使用它。全局变量是完全可以的,并且为此构建了预期的语言。只要您只有一个数据库/连接,这是有意义的。
如果全局变量不好,我们就不会有$_GET
和$_POST
(这是实际的全局变量)。
如果您的类(在这里猜测)是数据库查询的中心访问点,那么将句柄作为简单属性同样重要。
function __construct() {
require_once('mysqli.php');
$this->db = $db;
}
或者mysqli.php
脚本创建的任何局部变量。