сделал пользовательское свойство типа Строка.
которое должно сохранить массив.
массив передаю в функцию ConvertToDb. Там возращаю return serialize($value);
дальше, сделал страницу тест. на ней беру элемент у которого есть это свойство. выковыриваю его.
в нем лежит строка: (делаю echo $arProps[$prop_name]["VALUE"])
a:1:{s:5:"VALUE";a:4:{i:0;s:2:"34";i:1;s:2:"37";i:2;s:2:"36";i:3;s:2:"35";}}
вывожу ее таким образом:
$ar_sections_for_this_element=unserialize($arProps[$prop_name]["VALUE"]);
echo "<pre>";
print_r($ar_sections_for_this_element);
echo "</pre>";
тут ничего не выводится на экран, НО если я пропишу то что вывелось по echo напрямую в вывод:
$ar=unserialize('a:1:{s:5:"VALUE";a:4:{i:0;s:2:"34";i:1;s:2:"37";i:2;s:2:"36";i:3;s:2:"35";}}');
echo "<pre>";
print_r($ar);
echo "</pre>";
то он выведет то что нужно!!!! (в массиве хранятся числа)
о_О Это связано как-то с битриксом? Вроде стандартная функция PHP почему она себя так ведет?
ПС, проверил. перед отправкой в converttodb строка которая получается после serialize абсолютно такая же как выводится когда я ее достаю, перед unserialize.
которое должно сохранить массив.
массив передаю в функцию ConvertToDb. Там возращаю return serialize($value);
дальше, сделал страницу тест. на ней беру элемент у которого есть это свойство. выковыриваю его.
в нем лежит строка: (делаю echo $arProps[$prop_name]["VALUE"])
a:1:{s:5:"VALUE";a:4:{i:0;s:2:"34";i:1;s:2:"37";i:2;s:2:"36";i:3;s:2:"35";}}
вывожу ее таким образом:
$ar_sections_for_this_element=unserialize($arProps[$prop_name]["VALUE"]);
echo "<pre>";
print_r($ar_sections_for_this_element);
echo "</pre>";
тут ничего не выводится на экран, НО если я пропишу то что вывелось по echo напрямую в вывод:
$ar=unserialize('a:1:{s:5:"VALUE";a:4:{i:0;s:2:"34";i:1;s:2:"37";i:2;s:2:"36";i:3;s:2:"35";}}');
echo "<pre>";
print_r($ar);
echo "</pre>";
то он выведет то что нужно!!!! (в массиве хранятся числа)
о_О Это связано как-то с битриксом? Вроде стандартная функция PHP почему она себя так ведет?
ПС, проверил. перед отправкой в converttodb строка которая получается после serialize абсолютно такая же как выводится когда я ее достаю, перед unserialize.