Автор Тема: передача массива с PHP в JavaScript  (Прочитано 4189 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Altaxar

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 222
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.moroseac.ru/
передача массива с PHP в JavaScript
« : 06 Апреля 2007, 13:51:54 »
Подскажите если ли другой, более гуманный способ передать массив из PHP в JavaScript.
Делаю так:
(код в Smarty)

price 
= new Array();
{foreach 
item=item key=key from=$form->value.price.price}
price[{$key}]= new Array();
{foreach 
item=item2 key=key2 from=$item}
price[{$key}][{$key2}]= new Array();
{foreach 
item=item3 key=key3 from=$item2}
price[{$key}][{$key2}][{$key3}]= new Array();
{foreach 
item=item4 key=key4 from=$item3}
price[{$key}][{$key2}][{$key3}][{$key4}]= new Array();
{foreach 
item=item5 key=key5 from=$item4}
price[{$key}][{$key2}][{$key3}][{$key4}][{$key5}]= new Array();
{foreach 
item=item6 key=key6 from=$item5}
price[{$key}][{$key2}][{$key3}][{$key4}][{$key5}][{$key6}]={$item6};
{/foreach}
{/foreach}
{/foreach}
{/foreach}
{/foreach}
{/foreach}

В итоге получаю

price 
= new Array();
price[0]= new Array();
price[0][0]= new Array();
price[0][0][0]= new Array();
price[0][0][0][0]= new Array();
price[0][0][0][0][3]= new Array();
price[0][0][0][0][3][0]=100;
price[0][0][0][0][3][1]=123;
price[0][0][0][0][3][2]=2770;
price[0][0][0][0][3][3]=68;
price[0][0][0][0][0]= new Array();
price[0][0][0][0][0][0]=88;
price[0][0][0][0][0][1]=108;
price[0][0][0][0][0][2]=2438;
price[0][0][0][0][0][3]=59;
price[0][0][0][0][1]= new Array();
price[0][0][0][0][1][0]=86;
price[0][0][0][0][1][1]=106;
price[0][0][0][0][1][2]=2382;
price[0][0][0][0][1][3]=58;
price[0][0][0][0][2]= new Array();
price[0][0][0][0][2][0]=84;
price[0][0][0][0][2][1]=103;
price[0][0][0][0][2][2]=2327;
price[0][0][0][0][2][3]=57;
................

и строк приблизительно 100-200.
« Последнее редактирование: 06 Апреля 2007, 13:57:06 от Altaxar »
Не все является тем чем кажется.

Оффлайн for_i_0

  • $15 per hour
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 555
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.php.net/manual/en
передача массива с PHP в JavaScript
« Ответ #1 : 15 Апреля 2007, 23:52:57 »
Скорее всего легче использовать рекрсивную фнкцию для перебора и распечатки массива в JavaScript
[off]Безработный[/off]

Оффлайн Altaxar

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 222
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.moroseac.ru/
передача массива с PHP в JavaScript
« Ответ #2 : 16 Апреля 2007, 15:46:51 »
не в этом дело, я точно знаю глубину, и через рекурсию в данный момент будет код длинее, причем этот код в шаблоне (Smarty).
мне интересно как запаковать, тоесть структуру, чтобы JavaScript это легко разпаковал. например serialize();   unserialize(); в PHP.
Думаю написать свои функции, тут легче и через рекурсию будет сделать.
Но случайно не кто не знает уже готовые скрипты?
Не все является тем чем кажется.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28