lin/components

1.0.0 2019-01-22 07:57 UTC

This package is auto-updated.

Last update: 2024-04-22 19:53:45 UTC


README

Latest Stable Version Total Downloads PHP Version License

介绍

Lin-componentsLin框架的组件代码,这套组件可以独立于框架运行,它涵盖了常用的web方法和功能,是一套完备的web开发组件集合。其基于basement(一套web常见功能的开发规范)项目,并提供了更为多样的功能。

特性

  • 自带高性能kv、queue型模拟服务器,无需安装redismemcached等缓存或队列服务器,并能一键实现无缝替换为专用服务器。
  • 原生透明化支持SQL、Key-Value、Queue等服务器主从、多节点访问。
  • 极简主义设计。所有的方法无论命名、调用都保持简单一致,对外屏蔽了复杂的设计模式,只呈现最基本的php语法,避免二次学习成本。例如入参和出参都仅有php基础变量。
  • 零耦合。组件里的每一个小组件都相互独立,之间没有直接性耦合,皆可以作为一个单独的包使用
  • 涵盖场景广。对web应用场景做了深度涵盖,组件所提供的功能可以满足大型开发需求
  • 高度整合。对很多相似的功能做了统一化,如对验证码、oauth、login-in、XSRF、单点登录等安全场景,都只需一个简单的类Security和其仅有的几个方法组合实现。
  • 学习简单。所有复杂的概念都被屏蔽,使用者开发时的逻辑思维只需单向进行,如关联关系模型中,n对n的直接关联或远程关联等复杂概念都被屏蔽,使用者只需考虑单方向的主从关系(定义主到从模型即可,无需定义从到主模型)

功能列表

  • basement组件及功能扩展。
  • 完整的ORM,包括模型类和查询构建类,对复杂sql语句具有高度处理能力。
  • 全面化的数据处理,包括数据映射、数据格式化、数据校验等。
  • 完善的响应方式,json、xml、视图页面、http常见响应等。
  • 高性能路由,无论哪种风格的路由皆可以轻松构建并快速解析。
  • 完备的安全处理,强化保障各个web安全场景。
  • 弹性化的session,可一键切换多种session存储方式。
  • 灵活的url生成,无论动态或静态url轻松实现。
  • 完备简洁的视图引擎,贴近php的原生语法,并可实现页面的全局或局部静态化。
  • 扩展了的mvc模式,提供更灵活和更统一的调度方式,并可实现流程流水化执行,降低耦合,省略大量if-else
  • 更快速的算法库,如对称加密算法有数据量低、瞬时加解密、动态加密、超高安全特性等。

安装

配置composer.json文件
"require": {
    "lin/components": "^1.0"
}
执行composer install

或命令行执行

composer require lin/components 1.0

使用

使用前需先通过basement加载配置文件

Linker::Config()::set('lin', include 'config/lin-production.php'); //按需修改并加载组件配置项(生产环境)
Linker::Config()::set('servers', include 'config/lin-servers.php'); //加载服务器配置项

测试

安装memcached和redis服务器,并使这二者数据为空,配置config/test-servers.php文件,执行phpunit后,清空memcached和redis数据即可。(若不想测试这二者,可将phpunit.xml中的redismemcached组排除在外)

详细文档

捐赠

捐赠林澜叶

版权信息