@bullet2018

Как получить из строки массив?

Здравствуйте. Не могу понять, как мне получить из строк массив для:
$str = '175/60 R15';
нужен массив
Array
(
[0] => 175
[1] => 60
[2] => R15
)

А также для такой строки (первое число может быть и целым, и дробным):
$str2='5,5 x 15 ET45';
массив:
Array
(
[0] => 5,5
[1] => 15
[2] => 45
)
  • Вопрос задан
  • 268 просмотров
Решения вопроса 1
$str = '175/60 R15';

preg_match('!^([0-9]+)\/([0-9]+)\s(.*?)$!siu', $str,$res);
print_r($res);

$str='5,5 x 15 ET45';

preg_match('!^([0-9,.]+)\sx\s([0-9,.]+)\s(.*?)$!siu', $str,$res);
print_r($res);
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
deMone
@deMone
Техдиректор — tech-director.ru
preg_match_all('#[0-9,\.]+#i', '5,5 x 15 ET45', $m);
print_r($m);
Ответ написан
Комментировать
@artemyrogow
студент-магистр
Не много корявый способ, но все же можно:
$str = '175/60 R15';

$str2='5,5 x 15 ET45';


function myfunct($sym = [],$str = ''){


	$editString = str_replace($sym, $sym[0],$str);
	$result = explode($sym[0],$editString);

	return $result;
}

$result2 = myfunct(array("/"," "),$str);
$result3 = myfunct(array("x ", " ET"),$str2);
var_dump($result2);
var_dump($result3);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы