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 许可证发布。请参阅许可证文件。