DuckPhp\Ext\RouteHookRewrite

简介

用于重写URL.

选项

rewrite_map => []

  1. 选项

方法

public function __construct() public static function Hook($path_info) public function init(array $options, object $context = null) public function assignRewrite($key, $value = null) public function getRewrites() public function replaceRegexUrl($input_url, $template_url, $new_url) public function replaceNormalUrl($input_url, $template_url, $new_url) public function filteRewrite($input_url) protected function changeRouteUrl($url) protected function doHook($path_info)

详解

RouteHookRewrite

默认开启 实现了rewrite 。

rewrite 支持以 ~ 开始表示的正则, 并且转换后自动拼凑 $_GET

assignRewrite($old_url,$new_url=null)

  1. 支持单个 assign($key,$value) 和多个 assign($assoc)
  2. rewrite 重写 path_info
  3. 不区分 request method , 重写后可以用 ? query 参数
  4. ~ 开始表示是正则 ,为了简单用 / 代替普通正则的 \/
  5. 替换的url ,用 $1 $2 表示参数