YurunPHP是一款MVC开源PHP框架,它的一切都是根据实际项目需求总结归纳而出,力争减少开发者在项目开发中的重复工作量。它经历了许多大小项目的考验(其中不乏年销售额上亿的系统),不断完善改进,已经十分成熟。
YurunPHP框架承载过O2O平台、门户网站、企业应用,完全能够胜任各类复杂任务。参与项目开发的人员也一致认为YurunPHP框架确实方便易用,再也离不开它了。
YurunPHP框架支持PHP 5.3-7.x 版本,兼容 Windows / Linux 。
## 特色功能
> * **双向路由:**解析、生成一步到位
> * **动态分层架构:**除了常见的Control、Model、View,开发者还可通过配置文件自定义分层
> * **多入口:**满足各类开发者的需要
> * **API接口开发:**内置API接口控制器,支持直接返回包括JSON、XML等格式的各类数据
> * **简单ORM:**单表增删改查不需要写SQL语句,复杂处理不如写SQL更为便捷
> * **DB统一接口:**可以不改任何代码,实现更换数据库类型切换。目前支持MYSQL/MSSQL
> * **多数据库自由切换:**配置文件中可以配置多个数据库连接,在需要时连接,自由切换
> * **模版引擎:**YurunPHP内置了一个简单的模版引擎。采用HTML标签式的标签,方便不懂PHP的设计人员制作页面模版。RELEASE模式下模版会被编译,无须担心效率损耗!
> * **模版控件:**内置了许多常用控件,在开启默认模版引擎时可以使用 这样的标签来展示控件,支持数据绑定
> * **插件机制:**支持在系统中埋下事件,以便开发插件扩展
> * **数据验证:**不仅有数据验证类,而且model支持自动验证
> * **定时任务:**可以定时执行一些操作,拥有高度自由的触发时间配置功能
> * **驱动扩展:**内置Redis、Memcache等常用驱动,通过配置文件即可使用
> * **其它:**缓存、配置、数据库、错误日志记录、多语言支持、Session、Cookie、Request、Response
## 开源协议
YurunPHP**采用Apache Licence 2.0协议开源,可以放心用于商业用途**。
Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件)。
需要满足的条件也和BSD类似:
需要给代码的用户一份Apache Licence
如果你修改了代码,需要再被修改的文件中说明。
在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。
Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。
- 序言
- 有些话想说
- 基础入门
- 简介
- 下载安装YurunPHP
- 运行环境
- 开发规范
- 目录结构
- 模块
- 控制器
- 自动加载
- 手动加载
- 项目配置
- 入口文件
- 项目目录结构
- 配置文件
- 驱动配置
- 数据库配置
- 项目初始化处理
- 框架编译
- 项目部署
- 控制器
- 创建控制器
- 加载模版显示页面
- AJAX返回数据
- 模型
- 创建模型
- 实例化模型
- 数据管理
- 连贯操作
- distinct
- field
- from
- where
- wherePk
- group
- having
- order
- limit
- join
- page
- headTotal/footTotal
- 连贯操作收尾方法
- select
- selectPage
- buildSQL
- selectValue
- selectBy
- getBy
- getByPk
- random
- inc
- dec
- add
- edit
- delete
- 合计函数
- save
- 执行SQL语句
- 创建数据并验证
- 字段映射
- 增删改查前置和后置
- Response类
- GET/POST/COOKIE/REQUEST
- Cookie
- Session
- 如何自定义Session存储
- 数据库操作
- 常用操作
- 查询记录
- 存储过程
- 数据库函数
- MSSQL
- 视图
- 调用视图
- 给视图传值
- 模版引擎
- 输出
- 使用PHP代码
- 模版标签
- if
- switch
- for
- counter
- foreach
- include
- js/css/image
- url
- origin
- 模版常量替换
- 后台视图控件
- 通用属性用法
- 数据集绑定
- 下拉框(select)
- 单选框(radio)
- 单选框组(radiogroup)
- 选择框(checkbox)
- 选择框组(checkboxgroup)
- 表格(table)
- 文本框(textbox)
- 分页条(pagebar)
- 数据验证
- 验证方法
- between
- betweenEqual
- empty_str
- not_empty_str
- regex
- length
- lengthChar
- mobile
- tel
- phone
- postcode
- url
- ip
- lt/gt/ltEqual/gtEqual
- equal/unequal
- in/notin
- idcard
- 路由
- 路由配置
- 自定义分层
- 缓存
- 缓存配置
- 使用缓存
- 配置
- 配置驱动配置
- 使用配置
- 过滤域名
- 日志
- 日志驱动配置
- 文件日志
- 事件
- 事件列表
- 插件
- 多语言支持
- 定时任务
- API接口开发
- CLI命令行模式
- Soap WebService