Никогда не пользуйтесь этой функцией :)
Во-первых, сразу вопрос: а зачем ее использовать? Как минимум, она повторяет нативную функцию isset, а потом джуны путают на экзамене есть ли в php is_set или нету.
Во-вторых, если ей не передать второй параметр - она сделает таки этот нативный isset.
В-третьих, IDE (тот же, любимый джунами, эклипс) автоподставляет is_set при печати "is" + ctrl+пробел
И что мы получаем? событие OnBeforeIBlockElementUpdate. Проверка в нем типа такой
[CODE] is_set($array['PROPERTY_VALUES']['TEST']); [/CODE]
Никто ведь документацию не читает (особенно коменты к ней) http://php.net/manual/en/function.isset.php
Если сделать функцию, которая принимает ссылку на переменную и этой ссылке сделать isset *мегапуть* - этот путь будет создан.
Вот вам пример
[CODE] $array = array(
"a" => 1,
"b" => 2
);
is_set($array['PROPERTY_VALUES']['TEST']);
var_dump($array); [/CODE]
И что же в итоге?
Контентщик деактивирует элемент в админке из списка. По факту в массиве на апдейт только 'ACTIVE' => 'N'. После is_set там еще и массив с доп свойствами.
И битрикс после этого изменяет активность и ВСЕ доп свойства. Последние, конечно, обнуляет.
Во-первых, сразу вопрос: а зачем ее использовать? Как минимум, она повторяет нативную функцию isset, а потом джуны путают на экзамене есть ли в php is_set или нету.
Во-вторых, если ей не передать второй параметр - она сделает таки этот нативный isset.
В-третьих, IDE (тот же, любимый джунами, эклипс) автоподставляет is_set при печати "is" + ctrl+пробел
И что мы получаем? событие OnBeforeIBlockElementUpdate. Проверка в нем типа такой
[CODE] is_set($array['PROPERTY_VALUES']['TEST']); [/CODE]
Никто ведь документацию не читает (особенно коменты к ней) http://php.net/manual/en/function.isset.php
Если сделать функцию, которая принимает ссылку на переменную и этой ссылке сделать isset *мегапуть* - этот путь будет создан.
Вот вам пример
[CODE] $array = array(
"a" => 1,
"b" => 2
);
is_set($array['PROPERTY_VALUES']['TEST']);
var_dump($array); [/CODE]
И что же в итоге?
Контентщик деактивирует элемент в админке из списка. По факту в массиве на апдейт только 'ACTIVE' => 'N'. После is_set там еще и массив с доп свойствами.
И битрикс после этого изменяет активность и ВСЕ доп свойства. Последние, конечно, обнуляет.