2014-02-16 3 views
0

Я знаю, что все массивы имеют индексы, но вот проблема, с которой многие из вас могли столкнуться в прошлом: я использую CDetailView Yii Framework для отображения некоторых данных. Проблема в том, что я действительно не знаю, какие данные будут отображаться (на самом деле я делаю некоторые данные, но он должен быть динамическим, а не жестко запрограммированным). Для параметра CDetailView::attributes требуется массив, подобный этому array('name:type:label', 'name1:type:label', 'name2:type:label' ...). Данные извлекаются из базы данных и, следовательно, это ассоциативный массив, который Yii не обрабатывает. Таким образом, мне нужно будет создавать этот тип массива array($field1, $field2, $field3, ...) динамически, без индексов. Как я могу это сделать? Я пробовал array_values(), но, конечно, он включает в себя индексы. Кто-нибудь из вас имеет представление об этом, или я должен просто переоценить класс Yii? Заранее спасибо!PHP: динамически создавать простой массив без индексов

+6

Все массивы имеют индексы, независимо от того, используете ли вы (или Yii) их или нет. – kba

+0

Yii написан на PHP. Следовательно, если он принимает массив, массив содержит индексы – Sundar

ответ

0

После обширных исследований, вывод заключается в следующем:

Вы не можете создать массив, который выглядит как этот array($item1, $item2, $item3...) динамически.

Что касается вопроса Yii, то, по-видимому, если вы передадите ассоциативный массив, он будет обрабатывать его, я создавал массив массива (array(array(1 => $item1, 2 $item2))), поэтому он не работал.

Благодарю вас за ваши комментарии.

Смежные вопросы