Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- interface BookMapperInterface
- {
- public function findById($id);
- public function deleteById($id);
- }
- //--------------------------------------------------------------------
- // Раз - для MySQL
- namespace Storage\MySQL;
- class BookMapper implements \BookMapperInterface
- {
- public function findById($id)
- {
- // Выполняем это здесь:
- // SELECT * FROM `books` WHERE `id` = $id
- }
- public function deleteById($id)
- {
- // Выполняем это здесь:
- // DELETE FROM `books` WHERE id = $id
- }
- // и остальные методы..
- }
- //--------------------------------------------------------------------
- // Два - для MongoDB
- namespace Storage\MongoDB;
- class BookMapper implements \BookMapperInterface
- {
- public function findById($id)
- {
- // Выполняем это здесь:
- return $mongo->fetchCollectionById(...);
- }
- public function deleteById($id)
- {
- // Выполняем это здесь:
- return $mongo->deleteCollectionById(...);
- }
- // и остальные методы..
- }
- //-----------------------------------------------------------
- // Три для ЛЮБОЙ ДРУГОЙ БД
- namespace Storage\SomeRandomDbEngine;
- class BookMapper implements \BookMapperInterface
- {
- public function findById($id)
- {
- $anyDb->fetchById(...)
- }
- public function deleteById($id)
- {
- $anyDb->deleteById(...)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement