8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

phpcms v9二次开发:mvc模式的URL访问

IT171中文网 游客组 2013-7-17 1052

PHPCMS是采用MVC设计模式开发,基于模块和操作的方式进行访问,采用单一入口模式进行项目部署和访问,无论访问任何一个模块或者功能,只有一个统一的入口。

参数名称 描述 位置 备注
m 模型/模块名称 phpcms/modules中模块目录名称 必须
c 控制器名称 phpcms/modules/模块/*.php 文件名称 必须
a 事件名称 phpcms/modules/模块/*.php 中方法名称

模块访问方法[示例]:
http://csdn123.com/index.php?m=content&c=index&a=show&id=1
其中
m = content 为模型/模块名称 位于phpcms/modules/content
c = index 为控制器名称 位于phpcms/modules/content/index.php
a = show 为时间名称 位于phpcms/modules/content/index.php 中show()方法
id = 1 为其他参数 与正常get传递参数形式相同
如果我们访问您的域名 如:
http://www.csdn123.com/index.php
phpcms默认路由会定位到content模块的index控制器中的init操作,因为系统在没有指定模块和控制器的时候,会执行默认的模块和操作。因此下面的URL的结果是相同的:
系统还支持URL路由的功能,这些都能够带来其他的url访问效果。
http://www.csdn123.com/index.php?m=content&c=index&a=init



一步一步实例讲解:


第一步:在phpcms\modules的目录下新建一个文件夹,名字为hzw




第二步:在hzw目录下面,新建一个php文件,文件名为:abc.php




注意事项:abc.php里面的内容,必须要用class类的写法,否则会提示constrol找不到,即mvc中的c找不到。。如果没有指定a,则调用init方法,如果没有指定init方法,则会显示Action does not exist.


最终的效果如下:
">


来源:网络转载[hr]
最新回复 (19)
全部楼主
返回
发新帖
我也是有底线哒~