Форум сетевых администраторов
Показаны 6 сообщений на этой странице

Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- PHP (http://netadmin.ws/forum/forumdisplay.php?forumid=6)
-- Разрезать в массив (http://netadmin.ws/forum/showthread.php?threadid=6023)


Помещено webgrs 10-07-2003 в 20:42:

Разрезать в массив

Вот возникла тут у меня небольшая проблема, есть переменная в ней : "login=123 pass=hg info=Ага надо или нет date=dddd sum=Ok hfg jhj"
И надо её перевести в маасив по принципу :
$data['login'] = "123"
.....
$data['info'] = "Ага надо или нет" и т.д.

Вообщем то жду кодов и мыслей.
Спасибо.


Помещено Minister 10-07-2003 в 22:20:

Используй регулярные выражения.
Извини так сходу не могу тебе написать код этой регулярки. Но регулярка - это самое простое и удобное решение.

__________________
Gets.ru - Компьютерный Портал


Помещено polo 11-07-2003 в 01:12:

можно также использовать explode, split, list...

__________________
Всегда есть решение.


Помещено Kfmook 11-07-2003 в 01:42:

если бы в info не было бы пробелов то просто

PHP:


list($data['login'],data['pass'], и т.д)=exlpode($string, " ");


нужно буде еще вырезать login=, pass=, но это просто

а так придется регулярными выражениями

лучще замени раздделители переменных на какой нибудь символ, например & или ;

__________________
http://simpsons.ykt.ru - русский портал о Симпсонах


Помещено webgrs 11-07-2003 в 23:45:

Ð_то не мои переменные, они беруться с хоста, запросом и преобразовываються.


Помещено Kfmook 14-07-2003 в 03:03:


PHP:


<?
 $str
="login=123 pass=hg info=Ага надо или нет date=dddd sum=Ok hfg jhj";
 if (
preg_match("/login=(.+) pass=(.+) info=(.+) date=(.+) sum=(.+)/",$str,$regs)) {
    list(
$tmp,$data[login],$data[pass],$data[info],$da
ta
[date],$data[sum])=$regs;
   
print_r($data);
 } else {
   echo 
"Error!";
 }
?>

__________________
http://simpsons.ykt.ru - русский портал о Симпсонах


Формат времени GMT. Текущее время 00:27.
Показаны 6 сообщений на этой странице

Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.