Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: из php массива в javascript массив
 
 автор: goodwilll   (10.02.2009 в 13:06)   письмо автору
 
 

нужно двумерному массиву mass[][] на javascript присвоить все значения двемрного массива $mass[][] на php, скажите, както это можно сделать одной операцией не применяя циклы?

  Ответить  
 
 автор: Trianon   (10.02.2009 в 13:10)   письмо автору
 
   для: goodwilll   (10.02.2009 в 13:06)
 

одной операцией - нет.
Не применяя явные циклы, вероятно, можно. array_walk, array_map

  Ответить  
 
 автор: goodwilll   (10.02.2009 в 13:13)   письмо автору
 
   для: goodwilll   (10.02.2009 в 13:06)
 

вообще возможно ли достать из файла средствами php сто миллионов значений и записать их в двумерный или трехмерный javascript массив таким образом, чтобы пользователь не ждал минуту пока все эти значения вытащатся и запушутся в массив?

  Ответить  
 
 автор: Trianon   (10.02.2009 в 13:14)   письмо автору
 
   для: goodwilll   (10.02.2009 в 13:13)
 

звездочку с неба Вам не требуется?

Ни одному пользователю на клиентской стороне не нужны разом сто миллионов значений чего угодно.

  Ответить  
 
 автор: goodwilll   (10.02.2009 в 13:18)   письмо автору
 
   для: Trianon   (10.02.2009 в 13:14)
 

))) покачто нет, тогда такой вопрос:

<script>
for(i=1; i<=2; i++)
{
<? $i++;?>
mass[i]=<?=$mass[$i];?>
}
</script>

будет ли javascript 10 раз вызывать код php для увеличения переменной $i ?

  Ответить  
 
 автор: Trianon   (10.02.2009 в 13:23)   письмо автору
 
   для: goodwilll   (10.02.2009 в 13:18)
 

оператор $i++; выполнится один раз.
Javascript-вижок получит код
<script>
for(i=1; i<=2; i++)
{
mass[i]=значение
}
</script>
и mass[1] и mass[2] окажется присвоено одно и то же значение

  Ответить  
 
 автор: goodwilll   (10.02.2009 в 13:39)   письмо автору
 
   для: Trianon   (10.02.2009 в 13:23)
 

Вообще задача такая -- игровое поле 10000х10000 клеток, каждая клетка имеет код от 1 до 98 и сто миллионов значений хранятся в файле, еще в одном файле хранится значения левой верхней координаты каждого пользователя,чтобы выводить юзеру участок карты 10х10 не обязательно яваскрипту запоминать все значения, достаточно запомнить 100 перед выводом, но как их доставать если пользователь при передвижении карты (вверх, влева, вправо, вниз) должен видеть новую карту. Для этого идет запрос к php файлу на аджексе и перезаписывается его левая верхняя координата и с учетом ее значения нужно выводить новую карту. Php файл высылает js файлу данные новой координаты и ее учетом формируется на js новая карта, если писать данные в массив с файла после передачи новой координаты, то каким образом это можно реализовать?

  Ответить  
 
 автор: goodwilll   (10.02.2009 в 13:45)   письмо автору
 
   для: goodwilll   (10.02.2009 в 13:39)
 

Я наверно немного сумбурно выше написал, иными словами как реализовать это:

<script>
for(i=j; i<=k; i++)
{
mass[i]=<?=$mass[i];?>;
}
</script>

где i в переменной <?=$mass[i];?> равна i в js цикле

  Ответить  
 
 автор: goodwilll   (10.02.2009 в 13:50)   письмо автору
 
   для: goodwilll   (10.02.2009 в 13:45)
 

или как ajaxom можно в js файл переслать данные не в формате xml а в формате javascript?

  Ответить  
 
 автор: Trianon   (10.02.2009 в 13:53)   письмо автору
 
   для: goodwilll   (10.02.2009 в 13:39)
 

>Php файл высылает js файлу данные новой координаты и ее учетом формируется на js новая карта,

Что мешает выслать новую сотню значений?

  Ответить  
 
 автор: goodwilll   (10.02.2009 в 14:06)   письмо автору
 
   для: Trianon   (10.02.2009 в 13:53)
 

присылает <response> значение_координаты</response> а иногда вместе еще и с заголовком вот так <?xml version="1.0" encoding="windows-1251" standalone="yes"?> <response>значение_координаты</response> и приходится js'ом отсекать ненужные части... плюс учитывать то, что может придти как с заголовком, так и без него, из-за этого приходится с самого начала смотреть общую длинну , а причина тому не ясна пока, если отправлю 100 значений, то очень проблематично будет их принять всвязи с вышеописанными проблемами, да и плюс при каждом сдвиге карты любым пользователем серверу придется обрабатывать цикл в 100 проходов.. А пользователь может начать двигать карту быстрыми кликами на одной из стрелочек, а если это будет делать 50 пользователей, то сервер наверно в даун выпадет сразу ) но хотя несколько миллионов значений клиенту впихнуть не лучше..

Trianon, вот по вашему мнению от чего зависит в каком формате придут xml данные? Почему иногда с заголовком а иногда без него?

  Ответить  
 
 автор: goodwilll   (10.02.2009 в 16:12)   письмо автору
 
   для: goodwilll   (10.02.2009 в 14:06)
 

Да, Trianon, действительно вы правы, теперь юзер не ждет загрузки т.к. вывожу только нужные 100 значений, передал также xmlем тока spliтом отрезал то что нужно, спасибо за совет

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования