Ivan Asmer 7 anos atrás
pai
commit
63f1b60a10
1 arquivos alterados com 29 adições e 0 exclusões
  1. 29 0
      MVCHW.md

+ 29 - 0
MVCHW.md

@@ -0,0 +1,29 @@
+# ДЗ по MVC
+
+## Роутер
+
+Сделать роутер, который будет запускать функции (контроллеры), по шаблону адресной строки в регулярках:
+
+```php
+    $routes = [
+        "\/"  => function(){
+            echo 'index controller';
+        },
+        "\/chat\/(\d+)\/"  => function($chatId){
+            echo "chat controller for chat Id " . $chatId;
+        },
+        "\/user\/(\w+)\/(\d+)\/"  => function($username, $someId){
+            echo "user with name " . $username . " and some id: $someId";
+            echo '<pre>';print_r( $_GET );echo '</pre>';
+        },
+        "" => "myController",
+        "asdfasdf" => [$obj, "indexController"]
+    ];
+```
+
+Выше несколько роутов, каждый из которых запускается по тому или другому шаблону адреса. Используйте .htaccess для перенаправления всех запросов на один php файл, в котором
+соотносите `$_SERVER['REQUEST_URI']` с вашими шаблонами адресов используя `preg_match`. Параметры в строке адреса (то, что в скобочках в регулярках) должны попадать в контроллер
+в качестве параметров при вызове.
+
+продолжение ДЗ читайте тут: http://route.asmer.php.a-level.com.ua/
+