為了確保最佳效能,建立單一、可重複使用的連接至關重要可重複使用的資料庫連線。這可以透過使用匿名函數和工廠模式來完成。以下程式碼說明了這種方法:
$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中文網其他相關文章!