我是这个级别的 PHP 编程新手,我一直在阅读一篇关于单例和静态类的文章。我正在编写一个有助于我的数据库连接的类。
我遇到了 Jon Raphaelson 的以下代码(这里):
class ConnectionFactory
{
private static $factory;
public static function getFactory()
{
if (!self::$factory)
self::$factory = new ConnectionFactory(...);
return self::$factory;
}
private $db;
public function getConnection() {
if (!$this->db) // this line was modified due to comment
$this->db = new PDO(...); // this line was modified due to comment
return $db;
}
}
function getSomething()
{
$conn = ConnectionFactory::getFactory()->getConnection();
.
.
.
}
似乎我找到了我要找的东西,但是我有几个问题。
self::$factory = new ConnectionFactory(...);
- 我在这个类中没有看到构造函数。我是否只是创建此构造函数并传入数据库详细信息('dbname'、'user'、'pass'等)?- 该
getSomething()
函数,我假设目的是将所有将检索数据的实际函数放入 ConnectionFactory 类中 - 这就是该函数位于此类中的原因。否则,我会期望这个函数在另一个类中。[编辑] 跳过这个问题,我没有看到一个括号。 - 当两个用户登录站点并请求数据库连接(都在进行更新等)时会发生什么?这是一个单身人士会有问题吗?
谢谢!