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

Форум Регулярные Выражения

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

 

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

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

тема: разбить строку
 
 автор: AlexSol   (26.09.2006 в 21:03)   письмо автору
 
 

есть строка вида:

&line=[[ffffff],[3]],[[464541],[15]],
[[ffffff],[5]],[[464541],[2]],[[ffffff],
[45]]&line=[[ffffff],[2]],[[464541],[23]],
[[ffffff],[45]]&line=[[ffffff],[3]],
[[464541],[22]],[[ffffff],[45]]
&line=[[ffffff],[70]]&line=[[ffffff],[70]]
&line=[[ffffff],[70]]&line=[[ffffff],[70]]
&line=[[ffffff],[70]]&line=[[ffffff],[70]]
&line=[[ffffff],[70]]&line=[[ffffff],[70]]
&line=[[ffffff],[70]]&line=[[ffffff],[70]]


для начала хотется получить массив, в котором бы были значения всех элементов line


$arr[0]="[[ffffff],[3]],[[464541],[15]],[[ffffff],[5]],[[464541],[2]],[[ffffff],[45]]";
$arr[1]="[[ffffff],[2]],[[464541],[23]],[[ffffff],[45]]";
.....

   
 
 автор: cheops   (26.09.2006 в 23:46)   письмо автору
 
   для: AlexSol   (26.09.2006 в 21:03)
 

Можно поступть следующим образом
<?php  
$text 
'&line=[[ffffff],[3]],[[464541],[15]], 
[[ffffff],[5]],[[464541],[2]],[[ffffff], 
[45]]&line=[[ffffff],[2]],[[464541],[23]], 
[[ffffff],[45]]&line=[[ffffff],[3]], 
[[464541],[22]],[[ffffff],[45]] 
&line=[[ffffff],[70]]&line=[[ffffff],[70]] 
&line=[[ffffff],[70]]&line=[[ffffff],[70]] 
&line=[[ffffff],[70]]&line=[[ffffff],[70]] 
&line=[[ffffff],[70]]&line=[[ffffff],[70]] 
&line=[[ffffff],[70]]&line=[[ffffff],[70]]'
;

$pattern "|line=([^&]+)|";
preg_match_all($pattern$text$out);
unset(
$out[0]);
echo 
"<pre>";
print_r($out);
echo 
"</pre>";
?>

   
 
 автор: AlexSol   (27.09.2006 в 10:51)   письмо автору
 
   для: cheops   (26.09.2006 в 23:46)
 

спасибо.

теперьвозник вопрос о способепередачи данных.

по сути, &line= .... это двумерный массив и он может содержать до 70 элементов, каждый из которых содержит стабильно дваэлемента ([ffffff],[3]).

элементов &line=..... - сорок.
т.е. извне передаются данные от цвете ячеек таблицы размером 70*40.

вопрос такой: как эти данные лучше передать? одной строкой вида


info="&line=[[ffffff],[3]],[[464541],[15]],  
[[ffffff],[5]],[[464541],[2]],[[ffffff],  
[45]]&line=[[ffffff],[2]],[[464541],[23]],  
[[ffffff],[45]]&line=[[ffffff],[3]],  
[[464541],[22]],[[ffffff],[45]]  
&line=[[ffffff],[70]]&line=[[ffffff],[70]]  
&line=[[ffffff],[70]]&line=[[ffffff],[70]]  
&line=[[ffffff],[70]]&line=[[ffffff],[70]]  
&line=[[ffffff],[70]]&line=[[ffffff],[70]]  
&line=[[ffffff],[70]]&line=[[ffffff],[70]]"


или
как

line1="[[ffffff],[70]]&line=[[ffffff],[70]]"
line2="[[ffffff],[70]]&line=[[ffffff],[70]]"
 .....

   
 
 автор: cheops   (27.09.2006 в 10:54)   письмо автору
 
   для: AlexSol   (27.09.2006 в 10:51)
 

>теперь возник вопрос о способепередачи данных.
А передавать куда хотите?

   
 
 автор: AlexSol   (27.09.2006 в 10:58)   письмо автору
 
   для: cheops   (27.09.2006 в 10:54)
 

нужно передать данные на обработку php-файлу.

есть вариант передать все данные о таблице обной строкой или по отдельности данные о каждой из строк.

   
 
 автор: cheops   (27.09.2006 в 11:33)   письмо автору
 
   для: AlexSol   (27.09.2006 в 10:58)
 

А каким способом предаёте? GET, POST-методом, через файлы, через базу данных?

   
 
 автор: AlexSol   (27.09.2006 в 12:10)   письмо автору
 
   для: cheops   (27.09.2006 в 11:33)
 

мне разницы большой нет каким методом передавать, вот и спрашиваю. данные передаются из flash что-то типа данных о рисунке попиксельно.

   
 
 автор: cheops   (27.09.2006 в 22:37)   письмо автору
 
   для: AlexSol   (27.09.2006 в 12:10)
 

Тогда передавайте их одной строкой, которую уже разбирайте в PHP.

   
 
 автор: opex   (28.09.2006 в 11:47)   письмо автору
 
   для: cheops   (27.09.2006 в 22:37)
 

Одной строкой, то есть get?
Но ведь там ограничение на количество символов, а информации нужно передать немало.

   
 
 автор: cheops   (28.09.2006 в 12:34)   письмо автору
 
   для: opex   (28.09.2006 в 11:47)
 

Да, GET у вам может не убраться, но вы можете передавать другим способом строку, например, методом POST.

   
Rambler's Top100
вверх

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