reservat / customer
Reservat的顾客组件
dev-master
2015-04-06 14:16 UTC
Requires
- reservat/core: dev-master
Requires (Dev)
- phpunit/phpunit: 4.5.*
- robmorgan/phinx: 0.4.*
This package is not auto-updated.
Last update: 2024-09-14 17:00:51 UTC
README
为Reservat应用程序提供顾客组件服务。
基本用法
创建一个新的顾客对象
$customer = new \Reservat\Customer('Luke', 'Steadman', '01234567890', 'luke@steadman.com');
创建一个\Reservat\Datamapper\CustomerDatamapper
的实例
// We assume $pdo is stored elsewhere and shared
$mapper = new \Reservat\Datamapper\CustomerDatamapper($pdo);
现在保存你的顾客
$mapper->save($customer);
映射器
DataMapper功能允许你保存(插入/更新)和删除顾客记录。首先,创建一个映射器实例。
$mapper = new \Reservat\Datamapper\CustomerDatamapper($pdo);
让我们创建一个新的顾客对象,并通过映射器插入它
$customer = new \Reservat\Customer('Paul', 'Westerdale', '01234567890', 'paul@westerdale.com');
$mapper->insert($customer); // same as $mapper->save($customer);
让我们更新顾客对象。我们需要知道顾客的ID,这可能不会传递回顾客实体对象,你必须处理这个问题。
$customer->setEmail('paulo@westerdale.com');
$mapper->update($customer, 2);
或者使用save函数更新顾客
$mapper->save($customer, 2);
最后,使用映射器删除顾客
$mapper->delete($customer, 2);
仓库
仓库允许我们检索存储在我们持久存储中的数据。我们遵循两种方法,getById
和getAll
。
首先,创建一个repo实例。
$repo = \Reservat\Repository\CustomerRepository($pdo);
获取所有记录(默认限制:20)
$customers = $repo->getAll();
这将返回一个\Reservat\Repository\CustomerRepository
的实例,但它实现了Iterator接口,因此你可以遍历这个对象。
foreach($customers as $customer) {
$forename = $customer['forename'];
...
}
要获取单个对象,只需调用getById
方法,传递记录的ID。
$customer = $repo->getById(1)->current();
getById
也返回一个\Reservat\Repository\CustomerRepository
的实例。
使用current将返回NULL(如果找不到记录)或顾客数据数组。
###@todo
实现CustomerRepository添加测试- 包括RESTful API端点