As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center用于指导。
6年前关闭。
在php中实现mysql时,使用面向对象方法与过程方法有显著的区别吗?在php网站about
这是一个非常肤浅的例子。
我上面提到的多态性的一个例子如下:
顺便说一句,我更喜欢
6年前关闭。
在php中实现mysql时,使用面向对象方法与过程方法有显著的区别吗?在php网站about
mysqli_query
,(http://www.php.net/manual/en/mysqli.query.php)上,它提供了两者的一个例子,我只想知道是否存在显著的性能差异,或者只知道何时使用它们。 最佳答案
哪种方法更好的答案是“这取决于”和其他方法一样,有多种不同的方法,您还应该记住,使用对象的代码不一定是面向对象的,但仍然可以按程序编写。同样,不使用对象的代码仍然可以是模块化的。
不过,我每次都会选择使用mysqli
类。在表现上没有显著差异。您可能不会意识到使用DB类的一些优点,例如简化多态性,所以我使用该类的唯一理由是我更喜欢语法。但是,与其直接使用mysqli
,我可能建议您扩展或组合它。你只能在课堂上这样做。
class DB extends mysqli {
public function __construct() {
parent::__construct($_SERVER['DB_HOST'],
$_SERVER['DB_USER'], $_SERVER['DB_PASS']);
}
}
这是一个非常肤浅的例子。
我上面提到的多态性的一个例子如下:
class User implements DAO {
private $db;
public function __construct(DB $db) {
$this->db = $db;
}
}
//Testing code is simplified compared to using it in production
class TestDB extends DB {}
new User(new TestDB);
new User(new DB);
顺便说一句,我更喜欢
PDO
而不是mysqli