Сейчас пишу небольшую cms. Намерен реализовать роутинг вида example.com/class/method/parametr_1/
Как это лучше реализовать? Я вроде и понимаю как, но на практике ничего не выходит...
Процедурно? Роутер зависит от архитектуры модулей
добавлено спустя 3 минуты:
То, что предлагаешь ты, не безопасно. Вообще давать пользователю возможность напрямую вызывать методы или функции с заданными параметрами - это очень опасно
Была такая идея
-
можно сделать одну точку входа...index.php
В итоге мы будем контроллировать все запросы.С Rewrite не хватает практики(не работал),поэтому взято из интернета.
-
RewriteEngine on
RewriteBase /
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^.*$ index.php [L]
-
RewriteRule ^.*$ index.php [NC,L]
-
Перенаправляем все запросы.
-
index.php
-
$routeArray=$_SERVER['REQUEST_URI']; //URI, который был передан для того, чтобы получить доступ к этой странице. Например, '/index.html'.
-
$argv — Массив переданных скрипту аргументов
http://www.php.ru/manual/reserved.variables.argv.html
-
Это основа для получения данных.
-
на этом уровне удобно система блокировки,защита от взлома(контроллировать переданные параметры),в какой-то мере защита от dos.
добавлено спустя 2 минуты:
Извлекаем метод.а затем параметры.
mastes, если даже это не можеш реализовать, то забудь о создании cms. Ковыряй фреймворки, yii к примеру возьми
12 Авг 2012, 16:50А как тогда можно реализовать роутинг?
12 Авг 2012, 17:15