在类中引用其他类-php

在类中引用其他类-php,php,class,oop,methods,Php,Class,Oop,Methods,假设我有两个php类——classSecurity和classDatabase 安全性 class Security { public function userPermissions() { //use getData() from Database to obtain information } } 数据库 class Database { public function getData() { // some code

假设我有两个php类——class
Security
和class
Database

安全性

class Security {
    public function userPermissions() {
        //use getData() from Database to obtain information 
    }
}
数据库

class Database { 
    public function getData() {
        // some code 
        }
    }
安全类需要使用数据库类获取数据,有很多方法可以实现这一点,但我不确定最佳实践

是否最好创建一个两者都喜欢的实例

$db = new Database;
$sec = new Security($db);
然后在安全类中使用构造函数将db实例传递给它

或者在安全类中的_构造函数方法中创建一个新实例

如果有任何最佳实践,我将不胜感激

创建两者的实例,然后在安全类中使用构造函数将db的实例传递给它


您描述的方法被调用,从架构的角度来看,它通常是您案例的更好解决方案。

我个人的观点是make getData()保护和使用继承并通过安全类构造函数访问它使用PHP的反射类API这个API将完成依赖注入的技巧。这很有意义。非常感谢。