Aussprache: PAI Framework, offizielle Website: https://www.phalapi.net/
Die eleganten und detaillierten Entwicklungsdokumente, die speziell für Phper vorbereitet sind, können im Grunde die gewünschten Antworten in der Dokumentation finden. Bitte siehe: Phalapi 2.x -Entwicklungsdokumente.
Verwenden Sie einen Komponisten, um einen Projektbefehl zu erstellen, um eine Installation mit einer Klick zu erreichen.
$ composer create-project phalapi/phalapiWarme Erinnerung: Für die Verwendung des Komponisten finden Sie auf der kompletten Spiegelung des Komponisten-chinesischen Website/Packagisten China China.
Alternativ kann manuelle Installation durchgeführt werden. Führen Sie nach dem Herunterladen und Dekomprimieren dieses Git -Projektcodes ein optionales Komponist -Update durch: dh:
$ composer updateWenn Sie NGINX verwenden, können Sie sich auf die folgende Konfiguration beziehen.
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 ;
}
}Bei der Konfiguration müssen Sie das Stammverzeichnis der Website auf das öffentliche Verzeichnis festlegen und Nginx nach dem Speichern der Konfiguration neu starten.
Warme Erinnerung: Es wird empfohlen, den Zugangswurzelweg auf/path/to/phalapi/public zu verweisen.
So verwenden Sie die MySQL -Datenbank, um die Konfiguration ./config/dbs.php Datenbank zu ändern.
return array (
/**
* DB数据库服务器集群 / database cluster
*/
' servers ' => array (
' db_master ' => array ( // 服务器标记 / database identify
' type ' => ' mysql ' , // 数据库类型,暂时只支持:mysql, sqlserver / database type
' host ' => ' 127.0.0.1 ' , // 数据库域名 / database host
' name ' => ' phalapi ' , // 数据库名字 / database name
' user ' => ' root ' , // 数据库用户名 / database user
' password ' => '' , // 数据库密码 / database password
' port ' => 3306 , // 数据库端口 / database port
' charset ' => ' UTF8 ' , // 数据库字符集 / database charset
' pdo_attr_string ' => false , // 数据库查询结果统一使用字符串,true是,false否
' driver_options ' => array ( // PDO初始化时的连接选项配置
// 若需要更多配置,请参考官方文档:https://www.php.net/manual/zh/pdo.constants.php
),
),
),
// 更多代码省略……
);Schließlich müssen Sie dem Laufzeitverzeichnis Schreibberechtigungen hinzufügen. Weitere Installationsanweisungen finden Sie in der Dokumentation zum Herunterladen und Installieren.
In Phalapi können Sie den Schnittstellendienst angeben, der über den Serviceparameter aufgerufen werden soll (der kurze Name ist der S -Parameter). Greifen Sie beispielsweise auf den Standard -Schnittstellendienst zu.
http://dev.phalapi.net/?s=App.Site.Index
Die Ergebnisausgabe nach der Schnittstellenanforderung ähnelt wie folgt:
{
"ret": 200,
"data": {
"title": "Hello PhalApi",
"version": "2.4.2",
"time": 1501079142
},
"msg": ""
}
Der entsprechende PHP -Code befindet sich in der Datei ./src/app/api/site.php, und das Quellcodefragment lautet wie folgt:
<?php
namespace App Api ;
use PhalApi Api ;
/**
* 默认接口服务类
* @author: dogstar <[email protected]> 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 ' ],
);
}
}Der Betriebseffekt ist wie folgt:

Phalapi generiert automatisch Online -Schnittstellendokumente in Echtzeit basierend auf der Parameterkonfiguration und Code -Kommentare der von Ihnen geschriebenen Schnittstelle. Der Link zur Online -Schnittstellendokument lautet:
Der Browsing -Effekt ähnelt wie folgt:
Der Effekt der Seite Schnittstellendokumentdetails ähnelt wie folgt:
Unterstützt Online-Schnittstellentests, Anfordern von Beispielbeschreibungen, generierende Offline-HTML-Schnittstellendokumente und Echtzeit-Updates.
./phalapi
├── README.md # 简介
├── bin # 脚本目录
├── config # 配置目录
│ ├── app.php # 应用配置
│ ├── dbs.php # 数据库配置
│ ├── di.php # 依赖服务配置
│ └── sys.php #系统配置
├── data # 数据库
│ └── phalapi.sql # 数据库安装时的文件
├── language # 翻译包
├── public # 对外访问的目录
│ ├── docs # 离线生成的HTML接口文档
│ ├── docs.php # 在线版接口文档访问入口
│ ├── index.php
│ ├── init.php # 全局初始化文件
│ ├── static # 静态资源
│ ├── uploads # 上传目录(需要有写入权限)
│ └── phalapi_logo.png # logo图片
├── runtime # 运行目录
│ ├── cache # 文件缓存
│ └── log # 文件日志
├── sdk # SDK包
├── src # 项目源代码,非常重要
│ ├── app # 接口源代码(遵循ADM模式)
│ │ ├── Api # 放置接口源代码,相当于控制器层
│ │ ├── Common # 公共代码目录,放置工具等
│ │ ├── Domain # 领域业务层,负责业务逻辑和处理
│ │ ├── functions.php # 公共函数库
│ │ └── Model # 数据源层,负责数据持久化存储及操作
│ └── view # 页面模板目录(如接口文档)
├── tests # 单元测试
└── vendor # composer包,不需要手动修改,通过composer install/update可进行安装和更新 Ändern Sie die Datei ./public/init.php , um die aktuelle Sprache festzulegen.
// 翻译语言包设定-简体中文
PhalApi SL ( ' zh_cn ' );
// Setting language to English
PhalApi SL ( ' en ' );
Warme Erinnerung: Die obige Erweiterung muss vor dem Gebrauch über den Komponisten installiert werden. Weitere Informationen zur Verwendung und Entwicklung erweiterter Klassenbibliotheken finden Sie im Dokument: Phalapi Framework -Erweiterungsklassenbibliothek.
Warme Erinnerung: Der Unterschied zwischen Anwendungs-Plug-Ins und Komponistenerweiterungen besteht darin, dass Anwendungs-Plug-Ins detaillierter sind und spezifischere Funktionen aufweisen. Sie haben möglicherweise nicht nur Datenbanken, Schnittstellen, Schnittstellen, sondern auch mit anderen Terminals zusammen und unterliegen nicht den Komponistenspezifikationen. Sie sind die Entwicklungsmethode von Phalapis unabhängiger Erfindung und Design. Weitere Informationen finden Sie unter: Drittanbieter-Tutorial für Anwendungs-Plug-in-Entwicklung.
Warme Erinnerung: Alle oben genannten Produkte verwenden das Phalapi Open Source -Framework und werden vom Beamten unabhängig entwickelt. Einzelpersonen/Teams/Unternehmen können es gerne verwenden.
Wenn Sie Probleme oder Probleme finden, geben Sie hier bitte ein Problem ein.
Wenn Sie möchten, helfen Sie mir bitte, mir einen Stern auf Github oder Mayun zu geben, und Sie können auch an Phalapi^_^spenden.
Apache 2.0, Apache-Lizenz ist ein von Apache, einer berühmter gemeinnütziger Open Source-Organisation, angenommenes Protokoll. Dieses Protokoll ähnelt BSD und fördert auch das Code-Sharing und respektiert das Urheberrecht des ursprünglichen Autors und ermöglicht die Änderung der Code und die Wiederveröffentlichung (als Open-Source-Software oder kommerzielle Software).
Es wurde seit langem von Guangzhou Guochuang Network Technology Co., Ltd., gepflegt und verbessert.