Помогите с регуляркой

pehser

Новичок
есть строка
(Size:M,floor:men`s,color:black)
на выходе хочу получить масив
Код:
array
(
    [0] => Array
    (
          [0] => Size
          [1] => M)
    )
    [1] => Array
    (
            [0] => floor
            [1] => men`s
    )
    [2] => Array
     (
             [0] => color
             [1] => black
     )
)
но что то не получается
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Регулярка тут не нужна.
 

pehser

Новичок
а показать на примере? не оходо через кучу екплойдов гонять, а еше и это все дела в цыкле та как таких записей мин 10
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
А написать самому? Я что-то не вижу примеров кода, который можно было бы поправить. А писать за тебя никто не будет.
 

pehser

Новичок
регулярка у меня такая
Код:
preg_match_all('/[\(|,]((.+):(.+))[,|\)]/U', $name, $matches);
пробовал

Код:
'/(\w+):(\w+)/'
порезало апостроф
 

Активист

Активист
Команда форума
PHP:
<?php
echo "<pre>";

error_reporting(E_ALL);
ini_set("display_errors", "on");


$data = explode( ",", "Size:M,floor:men`s,color:black");

array_walk( $data, function(&$value) {
    
    $value = explode(":", $value);
  
});

var_dump( $data );

exit();
?>
array(3) {
  [0]=>
  array(2) {
    [0]=>
    string(4) "Size"
    [1]=>
    string(1) "M"
  }
  [1]=>
  array(2) {
    [0]=>
    string(5) "floor"
    [1]=>
    string(5) "men`s"
  }
  [2]=>
  array(2) {
    [0]=>
    string(5) "color"
    [1]=>
    string(6) "black"
  }
}
 

pehser

Новичок
спасибо но у меня почемуто началу ругаться
Error Illegal offset type (code: 2) in php.php (line: 24)

переделал так:
Код:
foreach ( $data as $key=>$value){
    $options[$key][] = explode( ":", $value );
};
 
Сверху