I am creating a simple ORM in the Zend Framework to roughly encapsulate a public library application using the DbTable / Mapper / Model approach. I am not sure if I am performing my user-related classes correctly, as I have some logic in Mapper_Userand some in Model_User.
Mapper_user
<?php
class Mapper_Users {
public function createModelObject(array $fields) {
if(!isset($fields['date_registered']))
$fields['date_registered'] = date('Y-m-d H:i:s');
if(!isset($fields['max_concurrent_rentals']))
$fields['max_concurrent_rentals'] = 3;
return new Model_User($fields);
}
}
?>
, Model_User (, , ), Model_User / /, , , " " .. , Model_User Mapper_User, Mapper_User->save();. Mapper - .
Model_User?
Model_User
<?php
class Model_User {
public function setPassword($value) {
$this->password = md5($value);
}
}
?>
Model_User->setPassword($value);, , $this->password = md5($value); . , - md5 Mapper_User->save(); , Model_User , .
. , , ", ", , Mapper, ( ) Mapper, ( ) . , - Mapper?
, , !
@RockyFord:
Mapper_User , , 500 Mapper_*.php, - , __construct()
<?php
class Mapper_Users {
public function __construct() {
$this->_db = new DbTable_Users();
if(!$this->_db instanceof Zend_Db_Table_Abstract)
throw new Exception('Invalid table data gateway provided');
}
}
?>