GetByID
Описание и параметры
array CSaleBasket::GetByID( int ID );
Метод возвращает параметры записи корзины с кодом ID. Нестатический метод.
Параметры вызова
Параметр | Описание |
---|---|
ID | Код записи. |
Возвращаемые значения
Возвращается ассоциативный массив параметров с ключами:
Ключ | Описание |
---|---|
ID | Код записи. |
PRODUCT_ID | Уникальный в рамках модуля код товара. |
PRODUCT_PRICE_ID | Дополнительный код товара. |
PRICE | Стоимость единицы товара. |
CURRENCY | Валюта стоимости единицы товара. |
WEIGHT | Вес единицы товара. |
QUANTITY | Количество единиц товара. |
LID | Сайт, на котором сделана покупка. |
DELAY | Флаг "товар отложен" (Y/N) |
CAN_BUY | Флаг "товар можно купить" (Y/N) |
NAME | Название товара. |
CALLBACK_FUNC* | Название функции обратного вызова для поддержки актуальности корзины. |
MODULE | Модуль, добавляющий товар в корзину. |
NOTES | Особые заметки, например, тип цены. |
ORDER_CALLBACK_FUNC* | Название функции обратного вызова для оформления заказа. |
DETAIL_PAGE_URL | Ссылка на страницу детального просмотра товара. |
FUSER_ID | Внутренний код владельца корзины (не совпадает с кодом пользователя) |
ORDER_ID | Код заказа, в который вошла эта запись (товар). Для товаров, которые помещены в корзину, но ещё не заказаны, это поле равно NULL. |
DATE_INSERT | Дата добавления товара в корзину. |
DATE_UPDATE | Дата последнего изменения записи. |
DISCOUNT_PRICE | Скидка на товар. Значение устанавливается только после оформления заказа. |
CANCEL_CALLBACK_FUNC* | Название функции обратного вызова для отмены заказа. |
PAY_CALLBACK_FUNC* | Название функции обратного вызова, которая вызывается при установке флага заказа "Доставка разрешена". |
PRODUCT_PROVIDER_CLASS** | Имя класса, реализующего интерфейс IBXSaleProductProvider. Торговый каталог записывает в это поле имя класса CCatalogProductProvider. |
* - ключи считаются устаревшими, начиная с версии 12.5.
** - ключ доступен, начиная с версии 12.5.
Обратите внимание, что этот метод возвращает данные, которые были актуальны на момент последнего выполнения для этой записи функции обратного вызова для поддержки актуальности корзины (либо на момент добавления записи, если функция обратного вызова не выполнялась или не установлена).
Пример использования
<? // Выведем актуальную корзину для текущего пользователя $arBasketItems = array(); $dbBasketItems = CSaleBasket::GetList( array( "NAME" => "ASC", "ID" => "ASC" ), array( "FUSER_ID" => CSaleBasket::GetBasketUserID(), "LID" => SITE_ID, "ORDER_ID" => "NULL" ), false, false, array("ID", "CALLBACK_FUNC", "MODULE", "PRODUCT_ID", "QUANTITY", "DELAY", "CAN_BUY", "PRICE", "WEIGHT") ); while ($arItems = $dbBasketItems->Fetch()) { if (strlen($arItems["CALLBACK_FUNC"]) > 0) { CSaleBasket::UpdatePrice($arItems["ID"], $arItems["CALLBACK_FUNC"], $arItems["MODULE"], $arItems["PRODUCT_ID"], $arItems["QUANTITY"]); $arItems = CSaleBasket::GetByID($arItems["ID"]); } $arBasketItems[] = $arItems; } // Печатаем массив, содержащий актуальную на текущий момент корзину echo "<pre>"; print_r($arBasketItems); echo "</pre>"; ?>
© «Битрикс», 2001-2023, «1С-Битрикс», 2023
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.