Code Igniter маршрутизация и ссылки - PullRequest
0 голосов
/ 27 февраля 2011

Я новичок в CodeIgniter, но хорошо знаю CakePHP.

Если переписать следующее:

test -> welcome/login
test/(:any) -> welcome/login/$1

Когда я пишу свои ссылки, я хочу добавить в код ссылку на "welcome / login / asdas" и проанализировать как "test / asdas". CakePHP сделал это, используя ссылку html или router :: url

EDIT:

Я имею в виду, что site_url ('welcome / login / asd') должен возвращать "test / asd"

Ответы [ 2 ]

1 голос
/ 27 февраля 2011

Я думаю, что это невозможно. На самом деле, CodeIgniter просто перенаправляет ваше приложение с одного URL на другой, используя маршруты, определенные вами ранее в route.php

Это самое далеко, что вы можете пойти. site_url - это внутренняя функция CodeIgniter, которая возвращает URL-адрес вашего сайта, указанный в config.php file

** * 1008 1009 * site_url ()

Возвращает URL вашего сайта, как указано в ваш конфигурационный файл . Файл index.php (или все, что вы указали в качестве своего сайта index_page в вашем конфигурационном файле) будет добавлен к URL, как и любой URI сегменты, которые вы передаете функции.

Вам предлагается использовать это функционировать в любое время, когда вам нужно создать локальный URL, чтобы ваши страницы стали более портативный в случае, если ваш URL меняется.

Сегменты могут быть дополнительно переданы функция в виде строки или массива. Вот пример строки:

echo site_url ("news / local / 123"); Приведенный выше пример будет возвращать что-то лайк: http://example.com/index.php/news/local/123

Я попытаюсь изучить функцию site_url, расположенную в файле url_helper.php (system/helpers/url_helper.php | Строка 42), и изменить ее так, чтобы она делала все, что я хочу.

0 голосов
/ 27 февраля 2011

Попробуйте это

Перейдите к application/config/routes.php

Вы можете добавить следующую переменную в routes.php

$route['test'] = "welcome/login";
$route['test/:any'] = "welcome/login/$1";

Просмотреть это http://codeigniter.com/user_guide/general/routing.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...