PHP:单例设计模式或静态类
我使用joomla的产品。PHP:单例设计模式或静态类,php,joomla,singleton,Php,Joomla,Singleton,我使用joomla的产品。 我在joomla有一个定制图书馆。 为了避免内存过多,我们使用静态类,如: class foo { publc static function hello() { return "HI"; } } 并称之为: foo::hello() 这是最好的办法吗? 我们希望在没有任何实例的情况下使用类中的函数。有什么技术原因吗? 单身汉怎么样 实例本身不使用内存。使用内存的是文件和实例信息。 如果使用静态类,将使用相同的内存量。 这是
我在joomla有一个定制图书馆。
为了避免内存过多,我们使用静态类,如:
class foo
{
publc static function hello()
{
return "HI";
}
}
并称之为:
foo::hello()
这是最好的办法吗?我们希望在没有任何实例的情况下使用类中的函数。有什么技术原因吗?
单身汉怎么样 实例本身不使用内存。使用内存的是文件和实例信息。 如果使用静态类,将使用相同的内存量。
这是优化代码的一种极端方式。不太好,但我会给你分数,让你试试。实例本身不使用内存。使用内存的是文件和实例信息。 如果使用静态类,将使用相同的内存量。
这是优化代码的一种极端方式。不太好,但我会给你分数,让你试试。实例本身不使用内存。使用内存的是文件和实例信息。 如果使用静态类,将使用相同的内存量。
这是优化代码的一种极端方式。不太好,但我会给你分数,让你试试。实例本身不使用内存。使用内存的是文件和实例信息。 如果使用静态类,将使用相同的内存量。
这是优化代码的一种极端方式。不是很好,但是我会给你分数,让你尝试一下。只是不要把函数放在一个类中。这不是Java
function hello() {
return "HI";
}
只是根本不要把函数放在一个类中。这不是Java
function hello() {
return "HI";
}
只是根本不要把函数放在一个类中。这不是Java
function hello() {
return "HI";
}
只是根本不要把函数放在一个类中。这不是Java
function hello() {
return "HI";
}
这是一种很好学习的设计模式,有良好的意图,但有固有的弱点,这使得有经验的程序员在提到它时会发起噱头反应。简言之,随着项目的发展,过度使用单例模式将抑制代码的增长和可重用性。singleton模式的基本意图是防止同一对象的多个实例化,因为web框架的各个部分在单个页面呈现过程中访问singleton 如果您想要使用模式简化代码,这是一件好事;但一定要对正确的问题应用正确的模式。例如注册表、工厂、抽象工厂和依赖项注入,这些都是我在开始时会探讨的几个例子 最后,这里是一个用于PDO连接的单例类的示例,它来自我的许多php书籍之一《php Master:编写尖端代码》
class Database extends PDO
{
private static $_instance = null;
private function __construct() {
parent::__construct(APP_DB_DSN, APP_DB_USER, APP_DB_PASSWORD);
}
public static function getInstance() {
if(!(self::$_instance instanceof Database)) {
self::$_instance = new Database();
}
return self::$_instance;
}
}
这是一种很好学习的设计模式,有良好的意图,但有固有的弱点,这使得有经验的程序员在提到它时会发起噱头反应。简言之,随着项目的发展,过度使用单例模式将抑制代码的增长和可重用性。singleton模式的基本意图是防止同一对象的多个实例化,因为web框架的各个部分在单个页面呈现过程中访问singleton 如果您想要使用模式简化代码,这是一件好事;但一定要对正确的问题应用正确的模式。例如注册表、工厂、抽象工厂和依赖项注入,这些都是我在开始时会探讨的几个例子 最后,这里是一个用于PDO连接的单例类的示例,它来自我的许多php书籍之一《php Master:编写尖端代码》
class Database extends PDO
{
private static $_instance = null;
private function __construct() {
parent::__construct(APP_DB_DSN, APP_DB_USER, APP_DB_PASSWORD);
}
public static function getInstance() {
if(!(self::$_instance instanceof Database)) {
self::$_instance = new Database();
}
return self::$_instance;
}
}
这是一种很好学习的设计模式,有良好的意图,但有固有的弱点,这使得有经验的程序员在提到它时会发起噱头反应。简言之,随着项目的发展,过度使用单例模式将抑制代码的增长和可重用性。singleton模式的基本意图是防止同一对象的多个实例化,因为web框架的各个部分在单个页面呈现过程中访问singleton 如果您想要使用模式简化代码,这是一件好事;但一定要对正确的问题应用正确的模式。例如注册表、工厂、抽象工厂和依赖项注入,这些都是我在开始时会探讨的几个例子 最后,这里是一个用于PDO连接的单例类的示例,它来自我的许多php书籍之一《php Master:编写尖端代码》
class Database extends PDO
{
private static $_instance = null;
private function __construct() {
parent::__construct(APP_DB_DSN, APP_DB_USER, APP_DB_PASSWORD);
}
public static function getInstance() {
if(!(self::$_instance instanceof Database)) {
self::$_instance = new Database();
}
return self::$_instance;
}
}
这是一种很好学习的设计模式,有良好的意图,但有固有的弱点,这使得有经验的程序员在提到它时会发起噱头反应。简言之,随着项目的发展,过度使用单例模式将抑制代码的增长和可重用性。singleton模式的基本意图是防止同一对象的多个实例化,因为web框架的各个部分在单个页面呈现过程中访问singleton 如果您想要使用模式简化代码,这是一件好事;但一定要对正确的问题应用正确的模式。例如注册表、工厂、抽象工厂和依赖项注入,这些都是我在开始时会探讨的几个例子 最后,这里是一个用于PDO连接的单例类的示例,它来自我的许多php书籍之一《php Master:编写尖端代码》
class Database extends PDO
{
private static $_instance = null;
private function __construct() {
parent::__construct(APP_DB_DSN, APP_DB_USER, APP_DB_PASSWORD);
}
public static function getInstance() {
if(!(self::$_instance instanceof Database)) {
self::$_instance = new Database();
}
return self::$_instance;
}
}
“我们希望在没有任何实例的情况下使用类中的函数”-有什么技术原因吗?不是最好的方法。你有很多东西要学。不要仅仅因为认为静态类占用更少的内存就使用它。这可能看起来有些过分,但请仔细阅读依赖项injuction容器。或者阅读PHP编程概述@N.B.在使用静态函数之前还应该考虑什么?“我们希望在类中使用没有任何实例的函数”-任何技术原因