Z-PHP_v4


配置路由

<h2>文件名:router.php</h2> <h2>文件位置:</h2> <p><strong>路由文件根据需求可以放在以下几个位置:</strong></p> <ul> <li><strong>app/应用目录/router.php</strong></li> <li><strong>app/应用目录/版本目录/common/router.php</strong></li> <li><strong>app/应用目录/版本目录/模块目录/common/router.php</strong></li> <li><strong>启用模块功能的情况下可以放置在:app/应用目录/版本目录/router.php</strong></li> </ul> <p><strong>建议<font color=red>模块路由</font>单独配置,文件放在模块的common目录下</strong> <strong><font color=red>模块路由</font>与应用的路由一致,省略模块名的匹配</strong></p> <pre><code>&lt;?php return [ 'PATH'=&gt;'', // 入口不是index.php时,需要指定入口【例如:admin.php 或者rewrite时的 admin】 '/index'=&gt;[ // 匹配路径'/index' 'ctrl'=&gt;'home', // 指定控制器是 home.class.php 'act'=&gt;'*', // *是通配符(相当于$_GET['a'])的值 'params'=&gt;['id', 'code'] // 传递的参数名【按此名称和顺序解析url中的参数值】 ], '/user'=&gt;[ 'ctrl'=&gt;'user', 'act'=&gt;'user_*', // *是通配符:(相当于'user_' . $_GET['a'])的值 'params'=&gt;['id', 'code'] ], '/login'=&gt;[ 'ctrl'=&gt;'user', 'act'=&gt;'login', 'params'=&gt;['id'=&gt;0, 'code'] // 【参数id默认是0】 ], '/reg'=&gt;[ 'ctrl'=&gt;'user', 'act'=&gt;'reg' ], '/sets/site'=&gt;[ 'ctrl'=&gt;'sets', 'act'=&gt;'site', ], '*'=&gt;[ //以上路由都不匹配的时候 'ctrl'=&gt;'err', 'act'=&gt;'_400' ], // 模块路由 'image'=&gt;[ // 不是“/”开头,代表的是模块名,表示image模块的路由 // 这里面的内容和上面完全相同,待匹配的url不需要加模块名 // 建议将模块路由放置在所属模块的common目录内,不要写在这里 '/upload'=&gt;[ 'ctrl'=&gt;'upload', 'act'=&gt;'index', ] ] ];</code></pre> <h2>路由参数</h2> <p><strong>通过常量 <font color=red>ROUTE</font> 可以获取各路由参数,结构如下:</strong></p> <table> <thead> <tr> <th>key</th> <th>类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td>module</td> <td>string</td> <td>模块(未启用模块功能,则无此参数)</td> </tr> <tr> <td>ctrl</td> <td>string</td> <td>控制器</td> </tr> <tr> <td>act</td> <td>string</td> <td>操作</td> </tr> <tr> <td>params</td> <td>array</td> <td>传递的路由参数</td> </tr> <tr> <td>path</td> <td>array</td> <td>pathinfo部分的数组结构</td> </tr> <tr> <td>query</td> <td>array</td> <td>路由参数和$_GET参数的合集</td> </tr> <tr> <td>uri</td> <td>string</td> <td>地址的 uri 部分</td> </tr> </tbody> </table>

页面列表

ITEM_HTML