Mod_rewrite преобразование когда переменная является массивом

Тема в разделе "Веб-серверы - Администрирование", создана пользователем itwork, 2 окт 2010.

Статус темы:
Закрыта.
  1. itwork

    itwork Гость

    Репутация:
    0
    можно ли как с помощью mod_rewrite преобразовать
    из cсылки
    Код:
    domain/index.php?cat[0]=a&cat[1]=b&cat[2]=c&cat[...]=...
    вот в такую ЧПУ, когда индекс cat может быть неограничен
    Код:
    doamin/a/b/c/...
     
  2. vital

    vital Больной Компом Детектед

    Репутация:
    0
    Регистрация:
    29 янв 2006
    Сообщения:
    2.431
    Симпатии:
    40
    можно
     
  3. itwork

    itwork Гость

    Репутация:
    0
    отлично, но хотелось какой-нибудь примерчик
     
  4. vital

    vital Больной Компом Детектед

    Репутация:
    0
    Регистрация:
    29 янв 2006
    Сообщения:
    2.431
    Симпатии:
    40
    Код:
    RewriteEngine On
    RewriteRule ^(.*)$ index.php [L,QSA]
    PHP:
    ?php
    /* Функция для очистки массива от пустых строк */
    function Clear_array($array)
    {
    $c=sizeof($array);
    $tmp_array=array();
    for(
    $i=0$i<$c$i++)
    {
    if (!(
    trim($array[$i])==""))
    {
    $tmp_array[]=$array[$i];
    }
    }
    return 
    $tmp_array;
    }

    $param=$_SERVER['REQUEST_URI'];
    $params=explode("/",$param);
    $params=Clear_array($params);
    ?>
    т.е. суть в том, что если колв-во параметров неограничено, то их надо обрабатывать самому скриптом.
     
  5. itwork

    itwork Гость

    Репутация:
    0
    вроде стало кабы понятно,
    но появился другой вопрос, хотел проанализировать поледний слэш
    т.е хотел написать, если у ссылки есть последний слэш то срабатывает 1-ое правило, иначе 2-е
    Код:
    RewriteRule ^(.*)[/]$ a.php?path=$1 [qsa]
    RewriteRule ^(.+[^/])$ a.php?file=$1 [qsa]
    но ни как не могу понять где ошибку допутил, если в ссылке есть последний сэш то срабатывают оба правила
     
  6. vital

    vital Больной Компом Детектед

    Репутация:
    0
    Регистрация:
    29 янв 2006
    Сообщения:
    2.431
    Симпатии:
    40
    RewriteCond?
     
  7. itwork

    itwork Гость

    Репутация:
    0
    а причем тут условия, разве без них не обойтись?
     
  8. vital

    vital Больной Компом Детектед

    Репутация:
    0
    Регистрация:
    29 янв 2006
    Сообщения:
    2.431
    Симпатии:
    40
    Просто как вариант.
    А про слеш.. Так уберите его вообще из условия.
    RewriteRule ^(.*)+[/]$ a.php?path=$1 [qsa]
    RewriteRule ^(.*)$ a.php?file=$1 [qsa]
     
Загрузка...
Похожие Темы - Mod_rewrite преобразование когда
  1. WolfEater
    Ответов:
    0
    Просмотров:
    1.239
  2. jager
    Ответов:
    1
    Просмотров:
    1.429
  3. PahaStar
    Ответов:
    0
    Просмотров:
    1.059
  4. PahaStar
    Ответов:
    0
    Просмотров:
    931
  5. ask40
    Ответов:
    0
    Просмотров:
    1.045
Статус темы:
Закрыта.

Поделиться этой страницей