为了确保最佳性能,建立单个、可重复使用的连接至关重要可重用的数据库连接。这可以通过使用匿名函数和工厂模式来完成。以下代码说明了这种方法:
$provider = function() { $instance = new PDO('mysql:....;charset=utf8', 'username', 'password'); $instance->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $instance->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); return $instance; }; $factory = new StructureFactory($provider);
在单独的文件中或在当前文件的更下方,您可以初始化数据库结构:
$something = $factory->create('Something'); $foobar = $factory->create('Foobar');
工厂类将遵循此结构:
class StructureFactory { protected $provider = null; protected $connection = null; public function __construct(callable $provider) { $this->provider = $provider; } public function create($name) { if ($this->connection === null) { $this->connection = call_user_func($this->provider); } return new $name($this->connection); } }
这种方法有几个优点:
以上是如何使用工厂模式高效管理PDO数据库连接?的详细内容。更多信息请关注PHP中文网其他相关文章!