# PHPCbping
**Repository Path**: Bping/PHPCbping
## Basic Information
- **Project Name**: PHPCbping
- **Description**: No description available
- **Primary Language**: PHP
- **License**: BSD-2-Clause
- **Default Branch**: dev
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2016-01-25
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
Welcome to PHPCbping!
===================
##目录
* [概要](#gy)
* [规范](#gf)
* [使用](#sy)
* [代码覆盖率情况](#dmfgl)
* [参考资料](#ckzl)
* [结束语](#jsy)
## 概要
内容:一个简单的php框架,主要是满足个人开发使用,面向后端API开发。
目标:轻量级的仅满足一般开发使用(由开发人员决定)。
框架:主要是在命令模式基础上扩展而成的。
架构的序列图:https://www.processon.com/view/link/558a701fe4b0ccebb524bb71
> **Note:** 框架目前没有实现视图层和模型层,只有控制层
## 规范
* 目前没有遵守也未考虑遵守[PSR](http://www.php-fig.org/)编码规范。
* 请看文档[编码风格要求](https://github.com/BPing/PHPCbping/blob/dev/Doc/%E7%BC%96%E7%A0%81%E9%A3%8E%E6%A0%BC%E8%A6%81%E6%B1%82.md),此文档里面描述本项目所遵守的规则。因为所有规则都是开发人员定义,所以并不完善,望指正!
* 开发人员务必认真阅读[Doc/](https://github.com/BPing/PHPCbping/tree/dev/Doc)目录下的文档文件。所有开发文档资料都放在此目录下
* 如果没有特别说明,统一采用UTF-8编码格式
## 使用
#### 单文件入口:index.php
```php
* 启动php(5.4+)内置服务器:php -S localhost:8080
> * 浏览器输入地址:http://localhost:8080/index.php?cmd=HelloWorld
> * 浏览器显示:{"hello":"hello world"}
#### 请求参数
http://localhost:port/index.php?cmd=test&other=o
* cmd(必需)
> 此参数描述控制的信息,例如
> - cmd=Test: 控制器test,就是说 控制器文件名为:Test.class.php; 类名:Test
> - cmd=test.test1: 控制器test,就是说 控制器文件名为:test1.class.php,此文件在子目录 test/下; 类名:test1
> **Note:** 大小写敏感
* 其他参数:用户自定义
#### 配置项
> 请查看:[配置注释](https://github.com/BPing/PHPCbping/blob/dev/Doc/%E9%85%8D%E7%BD%AE%E6%B3%A8%E9%87%8A.md)
#### 项目目录
* 应用目录:[App/](https://github.com/BPing/PHPCbping/tree/dev/App)
* 用户配置目录:[App/Config](https://github.com/BPing/PHPCbping/tree/dev/App/Config)
> 用户配置目录是可配置的,具体查看配置说明文档[配置注释](https://github.com/BPing/PHPCbping/blob/dev/Doc/%E9%85%8D%E7%BD%AE%E6%B3%A8%E9%87%8A.md)。
> 用户配置将会覆盖系统默认的配置项。
* 控制器目录:[App/Controllers](https://github.com/BPing/PHPCbping/tree/dev/App/Controllers)
> 控制器目录是可配置的,具体查看配置说明文档[配置注释](https://github.com/BPing/PHPCbping/blob/dev/Doc/%E9%85%8D%E7%BD%AE%E6%B3%A8%E9%87%8A.md)。
> 控制器支持二级子目录的存在
> 所有控制类必需继承父抽象控制类:[Controller](https://github.com/BPing/PHPCbping/blob/dev/PHPCbping/Controller.absclass.php)
```php
class test extends \Controller
{
/**
* 执行入口
* @param $arg_context
*/
function doExecute(\Context $arg_context)
{
$other = $arg_context->Params("other");
$arg_context->json_echo("hello world:".$other);
}
}
```
## 代码覆盖率情况

## 参考
* [ThinkPHP](http://document.thinkphp.cn/manual_3_2.html)
* [CodeIgniter](http://codeigniter.org.cn/)
##
目前没有支持办法映射,不过,用户可以自己实现的。
## 结束语
在这里我必须向大家坦白,我实现这个简单的框架主要目的还是为了学习,当然我也存在着想拥有一个简单个人的php开发框架以方便开发一些个人项目的想法。