如何在宝塔上,一键安装部署PhalApi开源接口框架?

第一步,进入你的宝塔 - 软件商店。

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_PHP

第二步,切换到:一键部署;

第三步,搜索 phalapi;

第四步,点击 一键部署;

填写你的接口域名

在安装界面,根据提示,填入你的接口域名,例如这里是:myapi.phalapi.net,以及你的新建接口数据库的初始名称和数据库密码。点击【提交】。

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_PHP_02

提交,安装成功后。

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_二维码_03

查看你的接口新网站

在宝塔成功安装后,可以看到新的接口网站和源代码目录。

对应的新站点:

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_.net_04

对应的源代码目录:

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_.net_05

访问你的新接口网站

如果绑定了你的接口域名,需要同时进行DNS解析设置。例如,假设使用的是阿里云,类似的DNS解析设置如下:

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_二维码_06

保存DNS后,访问你的接口域名,例如:http://myapi.phalapi.net/ ,打开效果如下:

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_二维码_07

查看API接口列表,

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_PHP_08

在线测试访问Hello World示例接口,

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_php_09

PhalApi框架默认会开启调试模式,方便进行接口测试。如果需要关闭PhalApi调试模式,可以打开 config/sys.php 系统配置文件,把debug改为false,然后保存。

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_php_10

开始开发你自己的PHP接口

以上安装完毕,接下来就可以打开源代码,开发你自己的PHP接口了。

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_php_11

PHP接口保存后,PhalApi会自动帮你生成实时最新的在线接口文档,非常方便。类似如下:

 http://myapi.phalapi.net/docs.php?service=App.Examples_QrCode.Png&detail=1&type=fold

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_PHP_12

对应的PHP源代码在
src/app/Api/Examples/QrCode.php,

PhalApi:在宝塔一键安装部署PHP开源接口框架的教程_二维码_13

对应PHP源代码:

<?php
namespace App\Api\Examples;

use PhalApi\Api;

/**
 * 接口示例
 */
class QrCode extends Api {

    public function getRules() {
        return array(
            'png' => array(
                'data' => array('name' => 'data', 'require' => true, 'desc' => '待生成二维码的内容'),
                'level' => array('name' => 'level', 'type' => 'enum', 'range' => array('L','M','Q','H'), 'default' => 'L', 'desc' => '错误纠正级别,L为最小,H为最佳'),
                'size' => array('name' => 'size', 'type' => 'int', 'min' => 1, 'max' => 10, 'default' => 4, 'desc' => '二维码尺寸大小'),
                'isShowPic' => array('name' => 'output', 'type' => 'boolean', 'default' => true, 'desc' => '是否直接显示二维码,否的话通过base64返回二维码数据'),
            ),
        );
    }

    /**
     * 二维码 - 根据文本内容,生成二维码
     * @desc 可根据传入的文本内容,生成对应的二维码,还可以调整尺寸大小。可以直接输出png图片,也可以返回base64后的图片数据。
     */
    public function png() {
        $qrcode = \PhalApi\DI()->get('qrcode', new \PhalApi\QrCode\Lite());

        if ($this->isShowPic) {
            $qrcode->png($this->data, false, $this->level, $this->size);
            exit();
        } else {
            $temp = tempnam("/tmp", 'qrcode');
            $qrcode->png($this->data, $temp, $this->level, $this->size);
            return base64_encode(file_get_contents($temp));
        }
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.

更多完整的API接口开发教程,可查看:http://docs.phalapi.net/#/v2.0/tutorial