Скажите, вы пробовали выполнить ваш код над неким определенным пользователем не в обработчике, а в командной строке?
Если пользователь попадет по каждому из UF_* в ветку else, что будет содержаться в $arFields["GROUP_ID"]?
Собственно спросил, потому что код
Код |
---|
$arFields["GROUP_ID"] = Array(58, 61, 54, 62, 73, 12, 45);
if (in_array("58",($arFields["GROUP_ID"]))>0)
$array_dels = array("58");
$array = array_diff($arFields["GROUP_ID"],$array_dels);
$arFields["GROUP_ID"]=$array;
if (in_array("61",($arFields["GROUP_ID"]))>0)
$array_dels = array("61");
$array = array_diff($arFields["GROUP_ID"],$array_dels);
$arFields["GROUP_ID"]=$array;
if (in_array("62",($arFields["GROUP_ID"]))>0)
$array_dels = array("62");
$array = array_diff($arFields["GROUP_ID"],$array_dels);
$arFields["GROUP_ID"]=$array;
print_r($arFields["GROUP_ID"]);
|
просто удалит 58, 61, 62 из исходного массива.