84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
今年打算前三个月疯狂学习框架,目前卡在基本结构这一块了,传统的MVC结构体能实现,但始终没能理清楚return操作,现在很多框架都直接是return,就会自动在浏览器输出内容,貌似有个接收并处理返回值的机制,求大神给个完整的demo示例,从单入口->控制器->输出,菜鸟级纯属研究学习,希望高人给指点下、先谢谢了。
认证0级讲师
给你大概写下思路
Controller.php:
<?php class Controller { public $var = array(); public function test(){ $this->xxx = 'hahahah';//变量传递 $this->assign('key','value'); //不同的框架定义不一样,通过这样把控制器里的值存储 return; } protected function assign($key,$value){ $this->var[$key]=$value; } } ?>
index.php
<?php require_once 'Controller.php'; $method = $_GET['method']; //todo 入参安全检查 $app = new Controller(); $app->$method(); extract($app->var); //接下来这里就可以对views、layout之类的进行载入 //主要就是实现$this->assign(),现多种多样,我这里是最简单的写了一种通过$app->var进行变量传递,可以使用单例的形式把当前Controller对象获取到后,取到对应变量内容后进行输出,或者使用extract()之类的方法进行重新定义变量,之后再require 对应的layout或者views,在对应文件里就可以直接使用变量了
我觉得你还是看着对应的框架手册,然后在本地做调试,理论加实践,如果遇到问题了在来这里讨论,比你直接要dome要强的多。而且一般框架里面都有说明如何创建一个项目入口的简单事例。你要打算学习,比较简单的研究下TP就可以,文档也全面
TP
给你大概写下思路
Controller.php:
index.php
我觉得你还是看着对应的框架手册,然后在本地做调试,理论加实践,如果遇到问题了在来这里讨论,比你直接要dome要强的多。而且一般框架里面都有说明如何创建一个项目入口的简单事例。你要打算学习,比较简单的研究下
TP
就可以,文档也全面