preg_split url slug и id
В настоящее время у меня есть этот шаблон URL:
foo-bar-1
bar-foo-bar-2
etc
Я бы хотел отделить слова от числа, но у меня возникли проблемы с полным пониманием того, как это сделать.
Я начал с того, что сблизило меня:
$slug = 'foo-bar-1';
preg_split('/(\d+)$/', $slug);
array (size=2)
0 => string 'foo-bar-' (length=8)
1 => string '' (length=0)
Но я не могу закончить это. Я хотел бы, чтобы это было так:
array (size=2)
0 => string 'foo-bar' (length=7)
1 => string '1' (length=1)
Любая помощь очень ценится! Спасибо!
1 ответ
Решение
Попробуй это:
preg_split('/-(?=\d+$)/', $slug);
я использую -
в качестве разделителя, и я проверяю, если за ним следует число в конце строки с заглядыванием (?=...)