龙空技术网

PhalApi 国内PHP开源接口框架 - 接口,从简单开始!

黄禅宗—为研发赋新能 1561

前言:

此时同学们对“php片段”都比较关心,同学们都想要了解一些“php片段”的相关文章。那么小编也在网上搜集了一些对于“php片段””的相关知识,希望大家能喜欢,姐妹们快快来学习一下吧!

Github项目地址:

1、开发文档

专为PHPer准备的优雅而详细的开发文档,请看:PhalApi 2.x 开发文档。

2、在线示例默认接口服务:在线接口文档:接口详情文档(以默认接口为例):创新项目-小白接口(免费、免开发、直接可用的的云端API):、快速安装composer一键安装

使用composer创建项目的命令,可实现一键安装。

$ composer create-project phalapi/phalapi

温馨提示:关于composer的使用,请参考Composer 中文网 / Packagist 中国全量镜像。

手动下载安装

或者,也可以进行手动安装。将此Git项目代码下载解压后,进行可选的composer更新,即:

$ composer update
4、部署Nginx配置

如果使用的是Nginx,可参考以下配置。

server {    listen 80;    server_name dev.phalapi.net;    # 将根目录设置到public目录    root /path/to/phalapi/public;    charset utf-8;    location / {        index index.php;    }    location ~ \.php$ {        fastcgi_split_path_info ^(.+\.php)(/.+)$;        # 根据当前环境,选择合适的通讯方式        # fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;        fastcgi_pass 127.0.0.1:9000;        fastcgi_index index.php;        include fastcgi_params;        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;    }}

配置时需要将网站根目录设置到public目录,配置保存后重启nginx。

温馨提示:推荐将访问根路径指向/path/to/phalapi/public。

数据库配置

如何使用的是MySQL数据库,参考修改./config/dbs.php数据库配置。

return array(    /**     * DB数据库服务器集群     */    'servers' => array(        'db_master' => array(                       // 服务器标记            'type'      => 'mysql',                 // 数据库类型,暂时只支持:mysql, sqlserver            'host'      => '127.0.0.1',             // 数据库域名            'name'      => 'phalapi',               // 数据库名字            'user'      => 'root',                  // 数据库用户名            'password'  => '',	                    // 数据库密码            'port'      => 3306,                    // 数据库端口            'charset'   => 'UTF8',                  // 数据库字符集            'pdo_attr_string'   => false,           // 数据库查询结果统一使用字符串,true是,false否            'driver_options' => array(              // PDO初始化时的连接选项配置                // 若需要更多配置,请参考官方文档:            ),        ),    ),    // 更多代码省略……);

最后,需要给runtime目录添加写入权限。更多安装说明请参考文档下载与安装。

5、使用调用接口

在PhalApi,你可以通过service参数(短名字是s参数)指定需要调用的接口服务。例如,访问默认接口服务。

默认接口:

对应执行的PHP代码在./src/app/Api/Site.php文件,源码片段如下:

<?phpnamespace App\Api;use PhalApi\Api;/** * 默认接口服务类 * @author: dogstar <chanzonghuang@gmail.com> 2014-10-04 */class Site extends Api {    public function getRules() {        return array(            'index' => array(                'username'  => array('name' => 'username', 'default' => 'PhalApi', 'desc' => '用户名'),            ),        );    }    /**     * 默认接口服务     * @desc 默认接口服务,当未指定接口服务时执行此接口服务     * @return string title 标题     * @return string content 内容     * @return string version 版本,格式:X.X.X     * @return int time 当前时间戳     * @exception 400 非法请求,参数传递错误     */    public function index() {        return array(            'title' => 'Hello ' . $this->username,            'version' => PHALAPI_VERSION,            'time' => $_SERVER['REQUEST_TIME'],        );    }}

接口请求后结果输出类似如下:

{    "ret": 200,    "data": {        "title": "Hello PhalApi",        "version": "2.4.2",        "time": 1501079142    },    "msg": ""}

运行效果,截图如下:

查看在线接口文档

PhalApi会根据你编写的接口的参数配置和代码注释,自动实时生成在线接口文档。在线接口文档链接为:

在线接口文档:

浏览效果类似如下:

客户端请求示例及SDK

进入Portal运营平台

PhalApi采用了当前流行且优秀的layuimin开发全新的管理后台,专门提供给非技术的运营人员使用(技术人员也可使用)。安装Portal前请先配置好数据库连接。如果需要单独升级Portal,可进入应用市场免费下载到本地后安装升级。

6、一张图告诉你如何使用PhalApi 2.x

7、子项目phalapi/kernal框架内核phalapi/notorm数据库包8、还有问题,怎么办?

如发现问题,或者任何问题,欢迎提交Issue到这里,或进入PhalApi开源社区。如果喜欢,请帮忙在Github或码云给个Star,也可以对PhalApi进行捐赠哦 ^_^。

9、开源许可协议

GPL-2.0

标签: #php片段