码云 Git clone :

MengPHP(原SummerPHP) UTF-8(码云)

目录结构

CornerPHP Framework
|-- core    框架的核心类
|-- config  配置文件
|-- libs    第三方库
|-- tool    小工具
|-- model   模型类, 理论上用于写获取数据的具体逻辑, 只放置在根目录下, 任何控制器都可以调用到
|-- db      表结构信息, 自动生成的
|-- modules 项目模块
|-- router  路由规则
|-- view   视图文件
|-- static  静态文件存放
|-- cli.php  命令行下的入口文件
`-- index.php   web入口文件

详细结构

/
|-- core    //框架的核心类
|   |--Main.php     //入口类,用来分析URI,加载并执行对应的php代码
|   |--Load.php     //自动加载类, 加载core, libs, model
|   |--Route.php    //路由类, 支持正则路由
|   |--Verify.php   //校验类, 检查参数是否合法
|   |--Request.php   //获取请求参数
|   |--Response.php   //响应数据或跳转
|   |--DB.php  //mysql类, 支持虚拟表名, 支持正则表名, 支持读写分离, 支持多库配置
|   |--View.php     //视图类, 显示html页面
|   `--Model.php    //模型类, 获取/处理数据的公共方法
|
|-- config  //配置文件
|   |-- verify.php  //数据验证的配置
|   |-- virtual_table.php //虚拟表的配置
|   |-- config_cache_test.php //test环境配置的整合,由脚本生成
|   `-- ...
|
|-- router  //路由文件
|   |-- cli.php
|   |-- user.php
|   `...
|
|-- libs    //第三方类库
|   |--Area.php     //省市联动
|   |--ICurl.php    //curl封装, 支持链式调用
|   |--RedisQueue.php   //Redis消息队列
|   |--FileLog.php      //文件日志类
|   |--Fun.php      //常用功能函数集合
|   `-- ...
|
|-- tool    //小工具
|   |-- sqls 本框架自带的表结构信息
|   `-- script  nginx/php启动脚本
|
|-- model //模型类, 可用于写获取数据的具体逻辑
|   |--User.php     //类名区分大小写
|   `--Test.php
|
|-- db    //数据库结构信息
|   |--user.php //user库的表结构信息
|   `...
|     
|-- modules //项目模块
|   |-- user //框架自带的登陆模块
|   |   |-- login.php 
|   |   |-- logout.php 
|   |   `-- ... 
|   `-- others
|
|-- view  //存放所有视图模版
|   |-- user
|   |   |--login.html 
|   |   |--logout.html 
|   |   `--register.html
|   `-- others
|
|-- static  //存放静态文件
|
|-- cli.php  //命令行下的入口文件 php cli.php -q xxx (xxx是需要先在路由配置文件中配置的键名)
`-- index.php   //web入口文件

Nginx 配置

 server {
        listen       80;
        server_name  www.test.com;

        location ~ \.ico|jpg|gif|png|js|css|woff2$ {
            root /path/to/static;
            #expires 1h;
        }

        location / {
            root /path/to/document_root/;
            fastcgi_pass   127.0.0.1:9000;
            #fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root/index.php;
            include        fastcgi_params;
        }
    }

nginx windows启动脚本

rem file_name: start_nginx.bat
taskkill /t /im nginx.exe
D:/server/nginx/nginx.exe -p D:/server/nginx

php fastcgi 启动脚本

rem file_name: start_php.bat
D:/server/php/php-cgi.exe -b 127.0.0.1:9000 -c D:/server/php/php.ini

同步框架最新发行版代码

进入 tool/, 执行 php update.php
(需要 php.exe 以及 git.exe 在环境变量中)

手机版

案例

个人店铺

stat