http://domain.ru/news/second/gigantskoe-domino-83839.html Как вытащить из ссылки "domain.ru", "second" и "83839" ? Добавлено спустя 53 секунды: пробовал через preg_split("/[\/\.-]+/", $str) , не получается
Разобрался с первыми двумя задачами, не могу все еще составить регулярку для 83839 Код (PHP): $url = parse_url($url, PHP_URL_PATH); $url = explode ('/' , trim($url, '/')); echo $url[0].' - '.$url[1]; preg_match('@^(?:http://)?([^/]+)@i',"http://domain.ru/", $matches); echo $matches[1];
быть такого неможет Код (PHP): preg_match('/\/\/([^\/]+)\/[^\/]+\/([^\/]+)\/\D+(\d+)/', 'http://domain.ru/news/second/gigantskoe-domino-83839.html', $m); echo '<pre>'; print_r($m);
Сорри, действительно работает, спасибо... я подставлял в preg_split Добавлено спустя 40 минут 24 секунды: А если я захочу дополнительно вывести "news", добавляю дополнительную \/([^\/]+)\, ничего не работает((, хелп
Код (PHP): <pre> <?php $url = array(); $url['parse'] = parse_url('http://example.com/news/second/gigantskoe-domino-83839.html'); $url['path'] = explode('/', $url['parse']['path']); $url['file'] = explode('.', end($url['path'])); $url['name_array'] = explode('-', $url['file'][0]); var_export($url); Код (PHP): array ( 'parse' => array ( 'scheme' => 'http', 'host' => 'example.com', 'path' => '/news/second/gigantskoe-domino-83839.html', ), 'path' => array ( 0 => '', 1 => 'news', 2 => 'second', 3 => 'gigantskoe-domino-83839.html', ), 'file' => array ( 0 => 'gigantskoe-domino-83839', 1 => 'html', ), 'name_array' => array ( 0 => 'gigantskoe', 1 => 'domino', 2 => '83839', ), )