<?php // mock pattern to unit test class User { protected $connection = null; public function __construct() { $this->connection = new PDO("mysql:host=localhost;dbname=development", "developer", "password"); } public function delete($id) { return $this->connection->exec(sprintf("DELETE FROM users WHERE user_id = %d", (int)$id)); } } // 测试代码 class MockUser extends User { public function delete($id) { return true; } } $user = new MockUser(); $result = $user->delete(1); if ($result) { echo "we delete a user!\n"; } else { echo "we did not delete a user.\n"; }