承接 laiz/laiz-db 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

laiz/laiz-db

Composer 安装命令:

composer require laiz/laiz-db

包简介

Object relational mapping library

README 文档

README

Simple O/R Mapping library with PHP5.

Sample Database

Tables:

CREATE TABLE item (
  item_id serial primary key,
  name    text not null,
  opt     text
);
CREATE TABLE sub_item (
  sub_item_id serial primary key,
  item_id     int references item(item_id),
  name        text not null
);

Usage

Initialization::

$db = new Laiz\Db\Db();
$db->setDsn('pgsql:host=localhost dbname=mydb user=myuser password=pass')
    ->setConfigFile('writable/config.ini');
    ->setAutoConfig(true)
    ->setVoPrefix('Vo_');

Selection:

$item = $db->from('Item')
    ->eq(array('name' => 'Name 1'))
    ->result();
$itemAndSubItems = $db->from('Item')
    ->join('SubItem')
    ->eq(array('Item.name' => 'Name 1'))
    ->result();
$items = $db->from('Item')
    ->like(array('Item.name', 'a'))
    ->order('itemId')
    ->iterator();

Update:

$item->name = 'Item 2';
$db->save($item);

Insert:

$subItem = $db->generateVo('SubItem');
$subItem->itemId = $item->itemId;
$subItem->name = 'Sub Name 1';
$db->save($subItem);

Delete:

$db->delete($subItem);

Pager:

$pager = new Laiz\Db\Pager($items, 10);
$pagerHtml = $pager->getHtml();

Notice

Vo that returned from iterator have references of variables. The following code works as expected:

$iterator = $db->from('Goods')->iterator();
$sum = 0;
foreach ($iterator as $goods){
    $sum += $goods->price;
}
echo $sum;

But, the following code does not work as expected:

$iterator = $db->from('Goods')->iterator();
$arr = array();
foreach ($iterator as $goods){
    $arr[] = $goods;
}
$sum = 0;
foreach ($arr as $goods){
    $sum += $goods->price;
}
echo $sum;

If you save vo to arrays or other variables, you need call setCloneVo method:

$iterator = $db->from('Goods')->iterator()->setCloneVo(true);
$arr = array();
foreach ($iterator as $goods){
    $arr[] = $goods;
}

...

统计信息

  • 总下载量: 44
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 1
  • 推荐数: 1

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2013-04-15

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固