<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # ThinkPHP函數詳解:U函數 [TOC] U函數用于完成對URL地址的組裝,特點在于可以自動根據當前的URL模式和設置生成對應的URL地址,格式為: >[success] **[模塊/控制器/操作#錨點@域名]?參數1=值1&參數2=值2...** 在模板中使用U函數而不是固定寫死URL地址的好處在于,一旦你的環境變化或者參數設置改變,你不需要更改模板中的任何代碼。 在模板中的調用格式需要采用 **{:U('地址', '參數'…)}** 的方式 ## 基本用法 U方法的用法示例【當前默認為Home模塊】: ~~~ U('User/add') // 生成Home模塊User控制器的add操作地址 /Home/User/add.html ~~~ ### 支持分模塊調用 ~~~ U('Admin/User/add') // 生成Admin模塊的User控制器的add操作地址 /Admin/User/add.html ~~~ 當然,也可以只是寫操作名,表示調用當前模塊的 ~~~ U('add') // 生成當前訪問控制器的add操作地址。如訪問Article/index 則生成的地址為Article/add.html ~~~ ### 傳入一些參數 ~~~ U('Blog/read?id=1') // 生成Blog模塊的read操作 并且id為1的URL地址 ~~~ U方法的第二個參數支持傳入參數,支持數組和字符串兩種定義方式,如果只是字符串方式的參數可以在第一個參數中定義,下面幾種方式都是等效的: ~~~ U('Blog/cate',array('cate_id'=>1,'status'=>1)) U('Blog/cate','cate_id=1&status=1') U('Blog/cate?cate_id=1&status=1') ~~~ 但是不允許使用下面的定義方式來傳參數: ~~~ U('Blog/cate/cate_id/1/status/1') ~~~ 根據項目的不同URL設置,同樣的U方法調用可以智能地對應產生不同的URL地址效果,例如針對: ~~~ U('Blog/read?id=1') ~~~ 這個定義為例。 如果當前URL設置為普通模式的話,最后生成的URL地址是: ~~~ http://serverName/index.php?m=Blog&a=read&id=1 ~~~ 如果當前URL設置為PATHINFO模式的話,同樣的方法最后生成的URL地址是: ~~~ http://serverName/index.php/Blog/read/id/1 ~~~ 如果當前URL設置為REWRITE模式的話,同樣的方法最后生成的URL地址是: ~~~ http://serverName/Blog/read/id/1 ~~~ 如果你同時還設置了PATHINFO分隔符的話: ~~~ 'URL_PATHINFO_DEPR'=>'-' ~~~ 就會生成 ~~~ http://serverName/Blog-read-id-1 ~~~ 如果當前URL設置為REWRITE模式,并且設置了偽靜態后綴為html的話,同樣的方法最后生成的URL地址是: ~~~ http://serverName/Blog/read/id/1.html ~~~ 如果設置了多個偽靜態支持,那么會自動取第一個偽靜態后綴添加到URL地址后面,當然你也可以手動在U方法里面指定要生成的偽靜態后綴,例如: ~~~ U('Blog/read','id=1','xml'); // 生成地址 http://serverName/Blog/read/id/1.xml ~~~ ## 路由支持 U方法還可以支持路由,如果我們定義了一個路由規則為: ~~~ 'news/:id\d'=>'News/read' ~~~ 那么可以使用 ~~~ U('/news/1'); //生成地址 http://serverName/index.php/news/1 ~~~ ## 域名支持 如果你的應用涉及到多個子域名的操作地址,那么也可以在U方法里面指定需要生成地址的域名,例如: ~~~ U('Blog/read@blog.thinkphp.cn','id=1'); // 生成地址 http://blog.thinkphp.cn/Home/Blog/read/id/1.html ~~~ @后面傳入需要指定的域名即可。 此外,U方法的第5個參數如果設置為true,表示自動識別當前的域名,并且會自動根據子域名部署設置APP_SUB_DOMAIN_DEPLOY和APP_SUB_DOMAIN_RULES自動匹配生成當前地址的子域名。 如果開啟了URL_CASE_INSENSITIVE,則會統一生成小寫的URL地址。 錨點支持 U方法還可以支持生成URL地址中的錨點,例如: ~~~ U('Blog/read#comment','id=1','html'); // 生成地址 http://serverName/Blog/read/id/1.html#comment ~~~ 如果域名和錨點同時使用的話,注意順序為先錨點后域名,例如: ~~~ U('Blog/read#comment@blog.thinkphp.cn','id=1'); // 生成地址 http://blog.thinkphp.cn/Home/Blog/read/id/1.html#comment ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看