Pronunciación: PAI Framework, Sitio web oficial: https://www.phalapi.net/
Los elegantes y detallados documentos de desarrollo especialmente preparados para PHPER básicamente pueden encontrar las respuestas que desea en la documentación. Consulte: Phalapi 2.x Documentos de desarrollo.
Use el compositor para crear un comando de proyecto para lograr una instalación con un solo clic.
$ composer create-project phalapi/phalapiRecordatorio cálido: para el uso del compositor, consulte el sitio web chino del compositor/Packagist China Mirrorización a gran escala.
Alternativamente, se puede realizar la instalación manual. Después de descargar y descomprimir este código de proyecto GIT, realice una actualización de compositor opcional, es decir:
$ composer updateSi está utilizando NGINX, puede consultar la siguiente configuración.
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 ;
}
}Al configurar, debe establecer el directorio raíz del sitio web en el directorio público y reiniciar NGINX después de guardar la configuración.
Recordatorio cálido: se recomienda apuntar la ruta de la raíz de acceso a/ruta/a/phalapi/public.
Cómo usar la base de datos MySQL, consulte Modificar la configuración de la base de datos ./config/dbs.php .
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
),
),
),
// 更多代码省略……
);Finalmente, debe agregar permisos de escritura al directorio de tiempo de ejecución. Para obtener más instrucciones de instalación, consulte la documentación para descargar e instalar.
En Phalapi, puede especificar el servicio de interfaz que se llamará a través del parámetro de servicio (el nombre corto es el parámetro S). Por ejemplo, acceda al servicio de interfaz predeterminado.
http://dev.phalapi.net/?s=App.Site.Index
La salida del resultado después de la solicitud de interfaz es similar a la siguiente:
{
"ret": 200,
"data": {
"title": "Hello PhalApi",
"version": "2.4.2",
"time": 1501079142
},
"msg": ""
}
El código PHP correspondiente está en el archivo ./src/app/api/site.php, y el fragmento del código fuente es el siguiente:
<?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 ' ],
);
}
}El efecto de operación es el siguiente:

Phalapi generará automáticamente documentos de interfaz en línea en tiempo real en función de la configuración de los parámetros y los comentarios de código de la interfaz que escribió. El enlace del documento de la interfaz en línea es:
El efecto de navegación es similar al siguiente:
El efecto de la página Detalles del documento de la interfaz es similar al siguiente:
Admite pruebas de interfaz en línea, solicitar descripciones de muestra, generar documentos de interfaz HTML fuera de línea y actualizaciones en tiempo real.
./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可进行安装和更新 Modifique el archivo ./public/init.php para establecer el idioma actual.
// 翻译语言包设定-简体中文
PhalApi SL ( ' zh_cn ' );
// Setting language to English
PhalApi SL ( ' en ' );
Recordatorio cálido: la extensión anterior debe instalarse a través del compositor antes de usar. Para obtener más información sobre el uso y el desarrollo de bibliotecas de clase extendidas, consulte el documento: Phalapi Framework Extension Class Library.
Recordatorio cálido: la diferencia entre los complementos de aplicación y las extensiones de compositor es que los complementos de aplicaciones son más granulares y tienen funciones más específicas. Es posible que no solo tengan bases de datos, interfaces, interfaces, sino que también cooperen con otros terminales, y no están sujetos a especificaciones del compositor. Son el método de desarrollo de la invención y el diseño independientes de Phalapi. Para obtener más información, consulte: Tutorial de desarrollo de complementos de aplicaciones de terceros.
Recordatorio cálido: todos los productos anteriores utilizan el marco de código abierto de Phalapi y son desarrollados de forma independiente por el funcionario. Los individuos/equipos/empresas pueden usarlo.
Si encuentra algún problema o algún problema, envíe un problema aquí.
Si lo desea, ayúdame a darme una estrella en Github o Mayun, y también puedes donar a Phalapi^_^.
Apache 2.0, la licencia Apache es un protocolo adoptado por Apache, una famosa organización de código abierto sin fines de lucro. Este protocolo es similar al BSD, y también fomenta el intercambio de códigos y respeta los derechos de autor del autor original, y permite la modificación y reducción de código (como código abierto o software comercial).
Ha sido mantenido y actualizado por Guangzhou Guochuang Network Technology Co., Ltd. durante mucho tiempo.