Формат массива, описывающего файловые свойства в компонентах news.list, news.detail, catalog.section, catalog.detail

Рейтинг: 1.9924  
На голосовании
Предложил Шипулин Артем 01.04.2013 12:29:10

Формат массива, описывающего файловые свойства в компонентах news.list, news.detail, catalog.section, catalog.detail

Сейчас для свойства типа "Файл" в случае если у элемента добавлен один файл, структура результирующего массива - $arResult["DISPLAY_PROPERTIES"]["MORE_PHOTO"] в шаблоне следующая:

[VALUE] => Array
        (
            [0] => 958
        )

и соответствующий ему массив
[FILE_VALUE] => Array
        (
            [ID] => 958
      ...
            [SRC] => /upload/iblock/914/2.jpg
        )


в тоже время, если у элемента больше одного значения для свойства типа "Файл" - имеем следующую структуру:

[VALUE] => Array
        (
            [0] => 948
            [1] => 949
        )


и соответствующий ему массив

[FILE_VALUE] => Array
        (
            [0] => Array
                (
                    [ID] => 948
                   ...
                    [SRC] => /upload/iblock/3af/1.jpg
                )

            [1] => Array
                (
                    [ID] => 949
                   ...
                    [SRC] => /upload/iblock/e22/2.jpg
                )


Т.е. во втором массиве появляется еще один уровень вложенности, на мой взгляд, в первом варианте должно быть также.
Рейтинг: 0  
Ответил Жуков Евгений 31.10.2013 19:41:07
Невозможно из соображений совместимости

Рейтинг: 0.2581  
Куклин Евгений 01.04.2013 22:14:30
так было бы логичнее, конечно, но у кого-то могут тупо поотваливаться существующие скрипты, заточенные на первый вариант и не предполагающие там массива вложенного
Рейтинг: 0  
Шипулин Артем 02.04.2013 03:10:15
Ну тогда, наверно, стоит сделать для случая если свойство множественное, в этом случае в шаблоне коллеги  наверняка делают проверку - один файл у данного элемента или несколько.
Рейтинг: 0.8846  
rzas 04.04.2013 16:34:04
все из за того что начали делать, но не согласовали стандарты, сейчас таких ляпов много, каждый компанент пишется разными людьми.