Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在其他对象的方法中使用对象_Php_Class_Methods - Fatal编程技术网

Php 在其他对象的方法中使用对象

Php 在其他对象的方法中使用对象,php,class,methods,Php,Class,Methods,在本例中,我在脚本的主文件中创建了一个sqlite3对象: $db = new sqlite3('file.sqlite'); 现在我需要用其他类的不同方法访问sqlite文件。 但是,访问该对象的最佳方式是什么 每次创建一个新对象时 在methode global中使用 global $db; 还是作为论据发表 $object = new exampleClass($db); 肯定是: $object = new exampleClass($db); 或者可以使用注册表类来存储对象,然

在本例中,我在脚本的主文件中创建了一个sqlite3对象:

$db = new sqlite3('file.sqlite');
现在我需要用其他类的不同方法访问sqlite文件。 但是,访问该对象的最佳方式是什么

每次创建一个新对象时

在methode global中使用

global $db;
还是作为论据发表

$object = new exampleClass($db);
肯定是:

$object = new exampleClass($db);
或者可以使用
注册表
类来存储对象,然后在需要时检索它们。有人会插嘴说这是一种不好的做法,但哦,好吧:

$object = Registry::get('db');
肯定是:

$object = new exampleClass($db);
或者可以使用
注册表
类来存储对象,然后在需要时检索它们。有人会插嘴说这是一种不好的做法,但哦,好吧:

$object = Registry::get('db');
肯定是:

$object = new exampleClass($db);
或者可以使用
注册表
类来存储对象,然后在需要时检索它们。有人会插嘴说这是一种不好的做法,但哦,好吧:

$object = Registry::get('db');
肯定是:

$object = new exampleClass($db);
或者可以使用
注册表
类来存储对象,然后在需要时检索它们。有人会插嘴说这是一种不好的做法,但哦,好吧:

$object = Registry::get('db');


最后一个称为依赖项注入,这是您应该使用的。然后将其保存到属性?或者每次我请求公共方法时都交付它?将其分配给构造函数中的属性。最后一个被称为依赖项注入,这是您应该使用的。然后将其保存到属性?或者每次我请求公共方法时都交付它?将其分配给构造函数中的属性。最后一个被称为依赖项注入,这是您应该使用的。然后将其保存到属性?或者每次我请求公共方法时都交付它?将其分配给构造函数中的属性。最后一个被称为依赖项注入,这是您应该使用的。然后将其保存到属性?或者每次我请求公共方法时都要交付它?将它分配给构造函数中的属性。是的,肯定比全局或反复创建它要好+1但是,还有其他方法可以做到这一点。我喜欢symfony2在这方面的尝试:然后将其保存到属性?或者每次我请求一个公共方法时都要交付它?为什么第二次尝试是不好的实践呢?如果实例化一个需要
$db
进行查询、更新等操作的对象,那么在
\u构造中可以设置
$this->db=Registry::get('db')与将
$db
传递到
exampleClass
中相同。无论哪种方式,
exampleClass($db)
构造函数都会将
$db
分配给
exampleClass
的属性。是的,肯定比全局或反复创建它要好+1但是,还有其他方法可以做到这一点。我喜欢symfony2在这方面的尝试:然后将其保存到属性?或者每次我请求一个公共方法时都要交付它?为什么第二次尝试是不好的实践呢?如果实例化一个需要
$db
进行查询、更新等操作的对象,那么在
\u构造中可以设置
$this->db=Registry::get('db')与将
$db
传递到
exampleClass
中相同。无论哪种方式,
exampleClass($db)
构造函数都会将
$db
分配给
exampleClass
的属性。是的,肯定比全局或反复创建它要好+1但是,还有其他方法可以做到这一点。我喜欢symfony2在这方面的尝试:然后将其保存到属性?或者每次我请求一个公共方法时都要交付它?为什么第二次尝试是不好的实践呢?如果实例化一个需要
$db
进行查询、更新等操作的对象,那么在
\u构造中可以设置
$this->db=Registry::get('db')与将
$db
传递到
exampleClass
中相同。无论哪种方式,
exampleClass($db)
构造函数都会将
$db
分配给
exampleClass
的属性。是的,肯定比全局或反复创建它要好+1但是,还有其他方法可以做到这一点。我喜欢symfony2在这方面的尝试:然后将其保存到属性?或者每次我请求一个公共方法时都要交付它?为什么第二次尝试是不好的实践呢?如果实例化一个需要
$db
进行查询、更新等操作的对象,那么在
\u构造中可以设置
$this->db=Registry::get('db')与将
$db
传递到
exampleClass
中相同。无论哪种方式,
exampleClass($db)
构造函数都会将
$db
分配给
exampleClass
的属性。