要测试 PHP 单例模式的正确性,可以遵循以下步骤:
class Singleton {
private static $instance;
private function __construct() {}
public static function getInstance() {
if (null === self::$instance) {
self::$instance = new Singleton();
}
return self::$instance;
}
public function testMethod() {
return "Singleton is working!";
}
}
function testSingleton() {
// 获取单例对象的实例
$instance1 = Singleton::getInstance();
$instance2 = Singleton::getInstance();
// 检查是否为同一实例
if ($instance1 !== $instance2) {
echo "Error: Singleton instances are not the same.";
return;
}
// 调用测试方法
$result = $instance1->testMethod();
if ($result !== "Singleton is working!") {
echo "Error: Singleton test method failed.";
return;
}
echo "Success: Singleton is working correctly!";
}
// 运行测试用例
testSingleton();
注意:这里的示例代码仅用于演示目的。在实际项目中,你可能需要使用更复杂的测试框架(如 PHPUnit)来进行更全面的测试。