HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

preg_match
  #1  
Старый 29.07.2009, 00:24
Student :)
Участник форума
Регистрация: 09.02.2007
Сообщений: 202
С нами: 10132786

Репутация: 9
Question preg_match

добрый вечер.

есть некий параметр
$url=http://sait.ru/page/xxxx/

как вытащить параметр xxxx ?
так только работает когда есть слэш после xxxx
а как сделать универсально если нет слэша после xxxx
preg_match("|(.*?)/page/(.*?)\/|i",$url,$user);

Последний раз редактировалось Student :); 29.07.2009 в 00:32..
 
Ответить с цитированием

  #2  
Старый 29.07.2009, 00:35
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
С нами: 9497186

Репутация: 1304


По умолчанию

Student
preg_match("|(.*?)/page/(.*?)\/?|i",$url,$user);
 
Ответить с цитированием

  #3  
Старый 29.07.2009, 00:42
Student :)
Участник форума
Регистрация: 09.02.2007
Сообщений: 202
С нами: 10132786

Репутация: 9
По умолчанию

Gifts не работает
 
Ответить с цитированием

  #4  
Старый 29.07.2009, 00:54
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
С нами: 8915117

Репутация: 389
По умолчанию

PHP код:
<?php

$text 
'http://sait.ru/page/xxxx/';

if (
$text{strlen($text) - 1} == '/')
{
  
$text substr($text0strlen($text) - 1);
}

$path explode('/'$text);

print_r($path[count($path) - 1]); // $path[count($path) - 1] == xxxx

?>
PHP код:
<?php

$text 
'http://sait.ru/page/xxxx/';

$regex '/^http:\/\/.*?\/.*?\/(.*?)\/{0,1}$/i';

preg_match_all($regex$text$path);

print_r($path); //$path[1][0] == xxxx

?>
 
Ответить с цитированием

  #5  
Старый 29.07.2009, 00:59
Student :)
Участник форума
Регистрация: 09.02.2007
Сообщений: 202
С нами: 10132786

Репутация: 9
По умолчанию

спасибо! щас попробуем
 
Ответить с цитированием

  #6  
Старый 29.07.2009, 12:04
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
С нами: 9497186

Репутация: 1304


По умолчанию

Student Хм, да, ошибочка вышла, тогда так:
preg_match("|(.*?)/page/([^/]*)|i",$url,$user);
PHP код:
$arr = array(
'http://sait.ru/page/xxxx/',
'http://sait.ru/page/anotheruser',
'http://sait.ru/page/admin/trashbin'
);
foreach(
$arr as $url)
{
preg_match("|(.*?)/page/([^/]*)|i",$url,$user);
var_dump($user);

 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.