所以我本周早些时候开始学习OOP,并希望用mysql为CRUD创建一个简单,动态且可重用的PHP类。我无法弄清楚如何解决这个问题。理想情况下,我希望它可以复制粘贴到任何项目中。
所以这就是我所拥有的:
<?php
class CRUD{
private $dbConn;
public function __construct(){
$this->dbConn = $this->connectToDb();
}
private function connectToDb(){
$dbHost = 'localhost';
$dbUsername = 'username';
$dbPassword = 'password';
$dbDatabase = 'database';
$dbConn = new mysqli($dbHost, $dbUsername, $dbPassword, $dbDatabase);
if($dbConn -> connect_errno){
die('Ingen forbindelse til database' . $dbConn -> connect_error);
} else {
$dbConn->set_charset('UTF8');
return $dbConn;
}
}
public function create($sql1){
$this->dbConn -> query($sql1);
}
public function read($sql1){
}
public function update($sql1){
$this->dbConn -> query($sql1);
}
public function delete($sql1){
$this->dbConn -> query($sql1);
}
}
?>
因此,我能够提出的唯一方法是将SQL字符串作为参数发送,然后将其发送到数据库。这将使该类可用于任何查询。我不确定这是最好的方法吗?
我也不确定如何将read方法设置为copy-pasteable,如果可能的话,我将在运行数据库阵列的循环中打印出预先设置好的HTML。
非常感谢任何帮助!
答案 0 :(得分:0)
这是一个好的开始,但你可以将这个课分成两部分:
有很多方法可以做到这一点并且会变得更好。您还可以阅读有关数据库抽象(DAO)的信息: http://en.wikipedia.org/wiki/Database_abstraction_layer
和ORM: http://en.wikipedia.org/wiki/Object-relational_mapping