https://github.com/hiscaler/ocdao
OpenCart Database Access Objects
https://github.com/hiscaler/ocdao
database database-access opencart
Last synced: 21 days ago
JSON representation
OpenCart Database Access Objects
- Host: GitHub
- URL: https://github.com/hiscaler/ocdao
- Owner: hiscaler
- Created: 2019-09-04T06:25:35.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2019-09-16T09:23:57.000Z (over 6 years ago)
- Last Synced: 2025-10-22T07:49:56.814Z (8 months ago)
- Topics: database, database-access, opencart
- Language: PHP
- Size: 16.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# OcDAO
OpenCart Database Access Objects
## 使用方法
### 加载
```php
$this->load->library('OcDao');
$ocDao = new OcDao($this->registry, false);
```
如果您需要启用调试模式,在创建 OcDao 对象的时候,第二个参数请传入 true, 之后每一次执行 SQL 语句,都将打印当前执行的 SQL 语句以及调用文件和行数,方便您调试。生产环境下,请关闭。以免暴露相关信息。
```php
...
$ocDao = new OcDao($this->registry, true);
```
### 添加
```php
$ocDao->reset()->insert('user', ['username' => "hiscaler"])->execute();
```
### 更新
```php
$ocDao->reset()->update('user', ['username' => 'John'], ['id' => 1])->execute();
```
### 查询
#### 查询一条数据
```php
$user = $this->ocDao
->reset()
->from('{{%user}}')
->select(['user_id', 'username'])
->orderBy(['user_id' => SORT_DESC])
->one();
```
`one()` 函数如果返回 false 表示没有查询到相应的数据,否则的话返回一个键值对数组,键为字段名,值为字段保存值。
生成的 SQL 如下:
```sql
SELECT `user_id`, `username` FROM `oc_user` ORDER BY `user_id` DESC LIMIT 0, 1
```
#### 查询多条数据
```php
$users = $this->ocDao
->reset()
->from('{{%user}}')
->select(['user_id', 'username'])
->limit(2)
->orderBy(['user_id' => SORT_DESC])
->all();
```
`all()` 总是返回一个数组,无论是否成功,如果返回的是空数组则表示没有查询到您要的数据。
生成的 SQL 如下:
```sql
SELECT `user_id`, `username` FROM `oc_user` ORDER BY `user_id` DESC LIMIT 0, 2
```