Содержание
Корзина
Плагин Basket - Object-Document-Mapper это основанный на SESSION с синтаксисом, довольно похожим на Cursor и его производные. Это означает, что любые адресованные данные доступны только в течение срока действия текущего пользовательского сеанса, что делает их удобными для реализации корзины покупок или любой службы, которая работает с гостевыми посетителями, а не с зарегистрированными.
Пространство имен: \
Расположение файла:lib/basket.php
Инициализация
Вот как вы создаете новый mapper корзины:
$basket = new \Basket(); $basket_named = new \Basket( 'discounted-items' );
Пожалуйста, обратитесь к методу _construct для получения подробной информации.
Методы
exists
Вернет TRUE, если поле определено
bool exists ( string $key )
Эта функция позволяет вам проверить, определено ли именованное поле. Пример:
$basket->set('cherry',5); $basket->exists('cherry'); // TRUE
set
Присвойте значение полю
scalar|FALSE set ( string $key, scalar $val )
Эта функция позволяет вам присвоить значение полю.
Примечание :$key '_id' является зарезервированным ключом и приведет set() к возврату FALSE без сохранения пары ключ / значение.
Возвращает присвоенное значение $val в случае успеха или FALSE, если $key равен зарезервированному ключу '_id'.
Пример:
$val = $basket->set('product_code', 2764); $val = $basket->set('product_discount', TRUE);
get
Получить значение поля
scalar|FALSE get ( string $key )
Эта функция позволяет вам получить значение поля.
Пример:
echo $basket->get('cherry'); // displays '5'
clear
Удалить поле
NULL clear ( string $key )
Эта функция позволяет удалить поле. Поле для этой корзины больше не существует.
Пример:
$basket->clear('cherry');
find
Возвращать элементы, соответствующие паре ключ / значение, или все элементы, если пара ключ / значение не указана
array|FALSE find ( [ string $key = NULL , mixed $val = NULL ] )
Эта функция позволяет находить элементы, соответствующие паре ключ / значение. Он возвращает массив объектов mapper'ов корзины.
Если пара ключ / значение не указана, возвращает все товары в корзине. Это дает вам возможность перебирать всю корзину.
Пример:
// add item $basket->set('name','cherry'); $basket->set('amount',5); $basket->save(); $basket->reset(); // add item $basket->set('name','peach'); $basket->set('amount',10); $basket->save(); $basket->reset(); $result = $basket->find('name','cherry'); echo $result[0]->get('amount'); // displays '5' (int) echo $result[0]->get('name'); // displays 'cherry' $result = $basket->find(); // array of basket items, if any // results, e.g.: array(2) { [0]=> object(Basket)#7 (3) { ["key":protected]=> string(5) "sunny" ["id":protected]=> string(23) "52db5405a64047.97371123" ["item":protected]=> array(2) { ["name"] => string(6) "cherry" ["amount"] => int(5) } } [1]=> object(Basket)#8 (3) { ["key":protected]=> string(5) "sunny" ["id":protected]=> string(23) "52db5405a64143.07049859" ["item":protected]=> array(2) { ["name"] => string(5) "peach" ["amount"] => int(10) } } }
findone
Вернуть первый элемент, соответствующий паре ключ / значение
object|FALSE findone ( string $key, mixed $val )
Эта функция позволяет получить первый элемент, соответствующий данной паре ключ / значение.
Пример:
$result = $basket->findone('amount','10'); echo $result->get('name'); // displays 'peach'
load
Сопоставить текущий элемент с соответствующей парой ключ / значение
array load ( string $key, mixed $val )
Эта функция позволяет сопоставить текущий элемент соответствующей паре ключ / значение.
Пример:
$basket->load('name','peach'); echo $basket->get('amount'); // displays '10' (int)
dry
Вернет TRUE, если текущий элемент пуст / не определен
bool dry ( )
Эта функция позволяет вам проверить, является ли текущий элемент пустым / неопределенным.
Пример:
$basket->load('name','banana'); $basket->dry(); // TRUE, this mapper is empty $basket->load('name','peach'); $basket->dry(); // FALSE, this mapper is hydrated
count
Вернуть количество товаров в корзине
int count ( )
Эта функция позволяет вернуть количество товаров в корзине.
Пример:
echo $basket->count(); // displays '2' (int)
save
Сохранить текущий элемент
array save ( )
Эта функция позволяет сохранить текущий товар в корзине.
Пример:
$basket->set('name','peach'); $basket->set('amount',10); $basket->save();
erase
Удалить пару «ключ-значение», совпадающую с элементом
bool erase ( string $key, mixed $val )
Эта функция позволяет удалить элемент корзины, соответствующий данной паре ключ / значение.
Пример:
$basket->erase('name','peach'); // returns TRUE
reset
Сбросить курсор
NULL reset ( )
Эта функция позволяет сбросить курсор.
Пример:
$basket->load('name','cherry'); // mapper is hydrated now $basket->dry(); // false $basket->reset(); $basket->dry(); // true, mapper is empty again
drop
Очистить корзину
NULL drop ( )
Эта функция позволяет полностью очистить корзину. Корзина также удаляется из СЕССИИ.
Пример:
$basket->drop();
copyfrom
Сопоставить элемент с помощью массива
NULL copyfrom ( array | string $var )
Этот метод позволяет сопоставить элементы массива из hive с корзиной в таблице которой имена полей соответсвуют именам ключей этого массива.
Пример 1:
$basket->copyfrom(array('name'=>'banana', 'amount'=> 15)); $basket->get('name'); // banana
Пример 2:
$f3->set('banana',array('name'=>'banana', 'amount'=> 15)); $basket->copyfrom('banana'); $basket->get('name'); // banana
copyto
Заполнить переменную массива hive содержимым элемента
NULL copyto ( string $key )
Эта функция позволяет вам заполнить переменную массива hive содержимым корзины.
Пример:
$basket->copyto($key);
checkout
Проверить содержимое корзины
array checkout ( )
Эта функция возвращает все товары из корзины и очищает ее.
Пример:
$basket_items = $basket->checkout();
__construct
Создать экземпляр класса
void __construct ( [ string $key = 'basket' ] )
Конструктор позволяет создать экземпляр класса.
Параметр $key является эквивалентом имени таблицы базы данных.
Пример:
$basket = new Basket( 'puppy-cart' );