У метода есть волшебная переменная $bSkipFUserInit = FalseПо умолчанию в случае невозможности определить ID пользователя магазина (а точнее отсутсвия корзины для пользователя) происходит ее принудительное создание (таблицы b_sale_fuser увеличивается на запись).
Таким образом, можно быть уверенным, что возвратится всегда ID пользователя корзины
Однако, в некоторых случаях это может быть вредным.
Например, на высоко посещаемых сайтах, а также находящихся под нагрузкой ботов использование данного метода приведет к постоянному росту размера таблицы и необоснованному созданию большого количества корзин
Альтернативой может служить использование метода с объявлением
CSaleBasket::GetBasketUserID(True);в таком случае отсутствия для пользователя корзины, новая уже не создается
Данную переменную необходимо использовать осторожно
Так, как код, например
| Код |
|---|
"FUSER_ID" => CSaleBasket::GetBasketUserID(True), |
становится нестабильным (так как не всегда есть возможность получить ID пользвователя магазина)