首頁 > 後端開發 > php教程 > typecho路由表 為什麼要存放在資料庫,還有每個url為什麼要以這樣的形式書寫

typecho路由表 為什麼要存放在資料庫,還有每個url為什麼要以這樣的形式書寫

WBOY
發布: 2016-10-18 08:55:59
原創
1219 人瀏覽過

閱讀了一下typecho的源碼,這個結構還是相當緊湊的,看上去有很重的java對象設計思想
但是對路由表這樣設置有很大的疑惑。
目前的寫法基本上就是把這個結構固定死了,為什麼不讓用戶可配置呢,例如把路由表存在某個配置文件,或者是實現自動路由功能。是為了保持簡化嗎?
現在的方式如果我要做一些新的開發好像只有以插件方式去實現了。
這個問題先不談

我的問題是例如如下的路由表
'attachment' =>

<code>array (size=6)
  'url' => string '/attachment/[cid:digital]/' (length=26)
  'widget' => string 'Widget_Archive' (length=14)
  'action' => string 'render' (length=6)
  'regx' => string '|^/attachment/([0-9]+)[/]?$|' (length=28)
  'format' => string '/attachment/%s/' (length=15)
  'params' => 
    array (size=1)
      0 => string 'cid' (length=3)</code>
登入後複製
登入後複製

看了下程式碼好像 沒有用到url這個字段,所以這裡是僅僅為了提示連結是這種模式嗎?類似註解的功能
還是哪裡有些功能我自己疏忽了沒注意到,有了解的麻煩說下

回覆內容:

閱讀了一下typecho的源碼,這個結構還是相當緊湊的,看上去有很重的java對象設計思想
但是對路由表這樣設置有很大的疑惑。
目前的寫法基本上就是把這個結構固定死了,為什麼不讓用戶可配置呢,例如把路由表存在某個配置文件,或者是實現自動路由功能。是為了保持簡化嗎?
現在的方式如果我要做一些新的開發好像只有以插件方式去實現了。
這個問題先不談

我的問題是例如如下的路由表
'attachment' =>

<code>array (size=6)
  'url' => string '/attachment/[cid:digital]/' (length=26)
  'widget' => string 'Widget_Archive' (length=14)
  'action' => string 'render' (length=6)
  'regx' => string '|^/attachment/([0-9]+)[/]?$|' (length=28)
  'format' => string '/attachment/%s/' (length=15)
  'params' => 
    array (size=1)
      0 => string 'cid' (length=3)</code>
登入後複製
登入後複製

看了下程式碼好像 沒有用到url這個字段,所以這裡是僅僅為了提示連結是這種模式嗎?類似註解的功能
還是哪裡有些功能我自己疏忽了沒注意到,有了解的麻煩說下

你是說整個還是只針對attachment?
整個是有用到url的

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板