Задать вопрос
VerbAlexVlad
@VerbAlexVlad
Программист-любитель

Как разбить строку на массив?

Добрый день!
Подскажите пож-та, как правильно разбить строку
S - 64см. S - 64см. M - 64,4см. L - 64,8см. L - 64,8см.

на массив типа:
array {
    [0] => {
        'size' => 'S',
        'value' => '64',
    }
    [1] => {
        'size' => 'M',
        'value' => '64.4',
    }
    [2] => {
        'size' => 'L',
        'value' => '64.8',
    }
}

Учетом того, что данные повторяются.
  • Вопрос задан
  • 62 просмотра
Подписаться 1 Простой Комментировать
Решение пользователя 0xD34F К ответам на вопрос (2)
0xD34F
@0xD34F
preg_match_all('/[A-Z]+ - \d+(,\d+)?/', $str, $matches);
$data = array_map(function($n) {
  $d = explode(' - ', $n);
  return [
    'size' => $d[0],
    'value' => $d[1]
  ];
}, array_unique($matches[0]));
Ответ написан
Комментировать