php models
2.3.3
一個 PHP 函式庫,讓您可以使用 PDO 輕鬆建立和定義模型
FETCH_INTO
變簡單 $ composer require lodev09/php-models
主要的ModelsDB
類別是一個 PDO 包裝器,用於使 CRUD 更加容易。它是來自 php-pdo-wrapper-class 的分叉程式碼
// connect to your database. Store the $db instance globally -- you only need to connect to your db ONCE!
$ db = new Models DB ( DB_HOST , DB_NAME , DB_USER , DB_PASSWORD );
可用的CRUD方法
$db->insert($sql, $binds)
或$db->insert($table, $values)
$db->select($sql, $binds)
$db->row($sql, $binds)
(與select
相同,但會傳回單行)$db->update($sql, $binds)
或$db->update('table', $values)
$db->delete($sql, $binds)
或$db->delete('table', $filters)
預設樣式是PDO::FETCH_OBJ
例子:
$ users = $ db -> select ( " SELECT * FROM users WHERE active = 1 AND username = :username " , array ( ' username ' => ' lodev09 ' ));
var_dump ( $ users );
ModelsModel
類別是可以繼承到Model類別的父類別。繼承此類允許您自動將結果“行”映射到模型類別(表)中。這個類別基本上使用PDO::FETC_INTO
風格,讓你更容易。以下是將錶鍊結到類別中的步驟:
ModelsDB
實例(見上文) $ db = new Models DB ( DB_HOST , DB_NAME , DB_USER , DB_PASSWORD );
Models Model:: setDb ( $ db );
User.php
類 namespace Models ;
class User extends Model {
public function getName () {
return $ this -> name ;
}
}
// somewhere in your init.php
Models User:: register ( ' users ' );
現在,您可以直接從查詢中取得User
實例。例子:
$ user = Models User:: row ( " SELECT id, name FROM users WHERE id = 1 AND active = 1 " );
// you can call the getName() method now
if ( $ user ) {
$ name = $ user -> getName ();
echo ' His name is ' . $ name ;
}
歡迎所有錯誤、功能請求、拉取請求、回饋等。請造訪我的網站 www.lodev09.com 或發送電子郵件至 [email protected]
© 2018 - 編碼:Jovanni Lo / @lodev09
根據 MIT 許可證發布。請參閱許可證文件。