PHP开源框架MiniFramework发布1.0.11版

MiniFramework 是一款遵循 Apache2 开源协议发布的,支持 MVC 和 RESTful 的超轻量级 PHP 开发框架。MiniFramework 能够帮助开发者用最小的学习成本快速构建 Web 应用,在满足开发者最基础的分层开发、数据库和缓存访问等少量功能基础上,做到尽可能精简,以帮助您的应用基于框架高效运行。

MiniFramework于2017年7月16日发布1.0.11版本,变化有:

* 改进转换伪静态地址分隔符的机制
* 优化路由处理伪静态时的性能
* 优化部分核心类的属性
* 优化框架内存占用

MiniFramework 1.0.11 版本下载地址
zip格式:https://github.com/jasonweicn/MiniFramework/archive/1.0.11.zip
tar.gz格式:https://github.com/jasonweicn/MiniFramework/archive/1.0.11.tar.gz

MiniFramework 快速入门文档
地址:http://www.miniframework.com/docv1/guide/

近期版本更新主要变化回顾:

1.0.10

* 新增支持使用“_”字符作为伪静态URL中的分隔符
* 新增支持伪静态时使用“.html”作为URL结尾的机制

1.0.8

* 新增在REST模式的API接口中,向Header传入Ver(版本号)实现调用不同版本的API接口的功能

1.0.7

* 新增Cache_Memcached类,用于对PHP的Memcached扩展的支持
* 改进Cache缓存类,增加支持写入永久有效缓存数据的特性,不再强制缓存具有有效期

1.0.6

* 新增在REST模式的API接口中使用$this->forbidden()方法直接输出403禁止访问的信息
* 新增向REST模式的API接口中不存在的方法发起请求时,自动输出403禁止访问的信息

1.0.4

* 新增用于获取请求头数据的方法

汇总PHP最常见的四种排序算法

PHP最常见的四种排序算法分别是:冒泡排序法,选择排序法、插入排序法和快速排序法。下面我们就分别给出四种排序算法的实现代码,供大家参考。

1.冒泡排序法

2.选择排序法

3.插入排序法

4.快速排序法

阳光部落原创,更多内容请访问http://www.sunbloger.com/

在CentOS环境为PHP安装Memcached扩展

首先,安装PHP的Memcached扩展前,要先安装其所依赖的libmemcached,方法如下:

libmemcached安装完毕后,就可以开始安装Memcached扩展了,方法如下:

解压缩后,我们需要先修改一下php_libmemcached_compat.h文件
将#include 的路径修改成#include </usr/local/include/libmemcached/memcached.h>然后再继续编译安装

最后,还要修改php.ini文件,加入extension=memcached.so并重启php-fpm即可。

阳光部落原创,更多内容请访问http://www.sunbloger.com/

用 MiniFramework 快速构建 REST 风格的 API 接口

MiniFramework 是一款遵循 Apache2 开源协议发布的,支持 MVC 和 RESTful 的超轻量级 PHP 开发框架。

通过 MiniFramework 内置的 REST 接口功能,我们可以很轻松的快速构建起基于 REST 风格的 API 接口,特别是在开发 iOS 和 Android 手机客户端应用时,服务器端的 API 接口是否灵活高效,直接影响着手机应用的体验。

下面介绍一下如何使用 MiniFramework 开发 REST 风格的 API 接口。

第一步,我们下载最新 MiniFramework 1.0.2 版本

下载地址是:https://github.com/jasonweicn/MiniFramework/archive/1.0.2.zip

下载并解压缩后,会看到里面有 App 和 MiniFramework 两个目录,App 目录是一个附带的应用 demo,MiniFramework 目录是框架核心文件。

阅读全文

书籍制作工具 GITBOOK 的安装方法

GitBook 是一个命令行工具(也是 Node.js 库),让你能够使用 GitHub/Git 和 Markdown 构建出美丽的书籍,可以包含互动的练习。GitBook 支持使用多种语言构建书籍。

GitBook支持输出多种文档格式,如:

静态站点:GitBook默认输出该种格式,生成的静态站点可直接托管搭载Github Pages服务上;
PDF:需要安装gitbook-pdf依赖;
eBook:需要安装ebook-convert;
单HTML网页:支持将内容输出为单页的HTML,不过一般用在将电子书格式转换为PDF或eBook的中间过程;
JSON:一般用于电子书的调试或元数据提取。

阅读全文

PHP开源框架MiniFramework发布1.0.0版

MiniFramework于2017年6月16日发布1.0.0版本,主要变化有:

* 新增对命名空间的支持
* 新增对RESTful的支持
* 新增对CLI运行模式的支持
* 新增常量APP_NAMESPACE,用于定义应用的命名空间(默认值为:’App’)
* 新增常量REST_ON,用于控制是否开启REST模式的API接口功能(默认值为:false)
* 新增常量SHOW_DEBUG,用于显示开发者调试输出的信息(默认值为:true)
* 新增可通过Config中的load()方法直接读取配置数组中某个键名对应的内容
* 新增全局函数dump(),用于帮助开发者在程序中输出变量进行调试
* 新增全局函数pushXml(),用于输出XML内容
* 新增全局函数parseDataToXml(),用于转换数据为XML
* 改进路由机制,支持伪静态下路径传参的同时混合问号传参
* 改进异常处理机制,优化异常抛出流程
* 改进自动加载机制,将Autoloader与Loader合并为Loader
* 改进Db类,对是否传入主机、端口等参数进行检查
* 改进Cache类,对使用Memcache或Redis时,是否传入主机和端口参数进行检查
* 改进Params类,以适应更新的PHP版本
* 改进全局函数pushJson(),增加一个用于控制是否直接输出JSON并终止程序的参数
* 改进部分异常报错信息的文字描述
* 改进核心文件命名规范,全局函数库的文件名变更为开头字母大写(Global.func.php)
* 改进应用案例入口文件引入框架的方式,以增强跨平台兼容度
* 修正调用Params类的setParams()方法时出现报错的Bug
* 修正Cache类无法正常连接需要验证密码的Redis主机的Bug
* 变更引导程序文件名,由Mini.php变更为Bootstrap.php,以符合多数开发者的习惯
* 变更控制器命名规则,取消名称后缀“Controller”
* 变更核心类库存放路径,以符合PSR-4规范
* 完善注释
* 启用Apache2开源协议

MiniFramework 1.0.0 版本下载地址:
zip格式:https://github.com/jasonweicn/MiniFramework/archive/1.0.0.zip
tar.gz格式:https://github.com/jasonweicn/MiniFramework/archive/1.0.0.tar.gz

MiniFramework 在线源码库
地址:https://github.com/jasonweicn/MiniFramework

MiniFramework 是一款遵循 Apache2 开源协议发布的,支持 MVC 和 RESTful 的超轻量级 PHP 开发框架。MiniFramework 能够帮助开发者用最小的学习成本快速构建 Web 应用,在满足开发者最基础的分层开发、数据库和缓存访问等少量功能基础上,做到尽可能精简,以帮助您的应用基于框架高效运行。

PHP 代码风格规范 PSR-2 中文版

本篇规范是 PSR-1 基本代码规范的继承与扩展。

本规范希望通过制定一系列规范化PHP代码的规则,以减少在浏览不同作者的代码时,因代码风格的不同而造成不便。

当多名程序员在多个项目中合作时,就需要一个共同的编码规范, 而本文中的风格规范源自于多个不同项目代码风格的共同特性, 因此,本规范的价值在于我们都遵循这个编码风格,而不是在于它本身。

关键词 “必须”(“MUST”)、“一定不可/一定不能”(“MUST NOT”)、“需要”(“REQUIRED”)、 “将会”(“SHALL”)、“不会”(“SHALL NOT”)、“应该”(“SHOULD”)、“不该”(“SHOULD NOT”)、 “推荐”(“RECOMMENDED”)、“可以”(“MAY”)和”可选“(“OPTIONAL”)的详细描述可参见 RFC 2119 。

阅读全文

PHP开源框架MiniFramework发布0.10.0版

MiniFramework于2017年6月5日发布0.10.0版本,主要变化有:

* 增加对Composer的支持
* 新增Config类,用于读取配置信息
* 新增Config/database.php,用于配置数据库
* 新增Model类,开发者创建模型时,可通过继承Model获得自动创建的数据库对象
* 新增常量HTTP_CACHE_CONTROL,用于设置页面缓存
* 新增常量CONFIG_PATH,用于设置配置文件路径
* 新增常量DB_AUTO_CONNECT,用于设置数据库自动连接(默认值为false)
* 在Loader::loadClass()方法中增加对Class命名规则的校验
* 在setLayout()方法中增加对布局文件命名规则的校验
* 修正Memcache和Redis缓存类中的Bug
* 改进全局函数getRandomString()
* 更新了README
* 完善注释

0.10.0版源代码:https://github.com/jasonweicn/MiniFramework/releases/tag/0.10.0

最新源代码:https://github.com/jasonweicn/MiniFramework

MiniFramework 是一款超轻量级的 PHP 开发框架,用以满足开发者最基础的 MVC 分层开发需求,在支持数据库和缓存访问等少量功能基础上,做到尽可能精简,以保证框架运行效率。

PHP开源框架MiniFramework发布0.9.0版

MiniFramework于2017年5月31日发布的0.9.0版本主要变化有:

* 新增Layout类,用于替代原有的布局控制方法。
* 从View中移除getLayout()方法,新的布局控制方法请查阅Layout类。
* 向附带案例App的IndexController.php文件中,增加Models调用方法的示例代码
* 向附带案例App的IndexController.php文件中,增加Layout调用方法的示例代码
* 为保持统一的目录命名风格,将常量CACHE_PATH默认值中的cache变更为Cache
* 新增常量LAYOUT_ON,用于开启或关闭布局控制功能(默认值为false)
* 新增常量LAYOUT_PATH,用于设置布局脚本存放的路径

0.9.0版源代码:https://github.com/jasonweicn/MiniFramework/releases/tag/0.9.0

MiniFramework是一款支持MVC的超轻量级PHP开源框架,满足开发者最基础的MVC分层开发需求,支持数据库和缓存访问等少量功能,做到尽可能精简,以保证框架运行效率。