laravel - PHP框架基本原理,求大神指导下、谢谢?
PHP中文网
PHP中文网 2017-04-11 09:44:01
0
2
264

今年打算前三个月疯狂学习框架,目前卡在基本结构这一块了,传统的MVC结构体能实现,但始终没能理清楚return操作,现在很多框架都直接是return,就会自动在浏览器输出内容,貌似有个接收并处理返回值的机制,求大神给个完整的demo示例,从单入口->控制器->输出,菜鸟级纯属研究学习,希望高人给指点下、先谢谢了。

PHP中文网
PHP中文网

认证0级讲师

全部回复(2)
刘奇

给你大概写下思路

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就可以,文档也全面

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!