Maison >développement back-end >tutoriel php >一个超级简单的php框架

一个超级简单的php框架

WBOY
WBOYoriginal
2016-07-29 09:15:523045parcourir

最近自己写了一个php框架,github地址如下:
blakeFez-PHP-Framework
该框架功能比较少,比较适合用于个人小型网站。
该框架的目录结构如下:

<code>/command    <span>//该目录用于存放cli模式下的command类</span>
/controller <span>//该目录用于存放cgi模式下的controller类</span>
/frame  <span>//该目录用于存放框架的核心代码</span>
    BlakeFez.php <span>//这是框架的核心文件</span>
    Command.php <span>//command的基类,所有的command类都要继承该类</span>
    CommonMysql.php <span>//实现的一个mysql类</span>
    CommonRequest.php <span>//实现的一个获取url请求类,最好使用</span><span>//CommonRequest::getRequest('option')来代替</span><span>//$_GET['option']和$_POST['option']</span>
    Controller.php <span>//controller类的基类,所有的controller类都要</span><span>//继承该类</span>
    Model.php <span>//model类的基类,所有的model都要继承该类</span>
/model  <span>//该目录用于存放model类</span>
/service <span>//该目录用于存放公用的service类</span>
/<span>static</span><span>//该目录用于存放js、css、图片等</span>
/view <span>//该目录用于存放前端模板文件</span></code>

该框架支持CGI和CLI两种模式。

在CGI模式下,使用方法如下:
①、路由方式
比方有这样一个url:http://host/index.php?c=index&a=welcome
则实际会请求/controller目录下IndexController类的welcome方法。

②、前端渲染
在controller里面,使用:

<code>$<span>this</span>-><span>out</span>[<span>'title'</span>] = <span>'welcome to china'</span>;</code>

则会把变量title输出到前端。在前端模板文件中,可以这样使用该变量:

<code><span>title</span>><span><span><?php </span><span>echo</span><span>$title</span>;<span>?></span></span><span><span>title</span>></span></span></code>

前端文件的命名方式是这样的:
比如IndexController类的welcome方法对应的前端文件是:
/view/index/welcome.php

如果是异步请求的,不需要前端渲染,可以在controller中这样写:

<code><span>$this</span><span>-></span>outType <span>=</span><span>'json'</span>;</code>

在CGI模式下,使用方法如下:
php SRC_PATH/index.php -c index -a index
这行命名将会执行command目录下IndexCommand类的index方法。

版权声明:本文为博主原创文章,转载请注明出处。

以上就介绍了一个超级简单的php框架,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn