44 Star 81 Fork 32

RockYang / herosphp-framework

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

注意,这个项目只是框架内核代码,只能作为依赖,不能直接运行!!!

herophp demo 项目在这里:http://git.oschina.net/blackfox/herosphp-app

或者你可以通过 composer 直接创建:

composer create-project herosphp/app demo # demo 指代应用名称(App Name)

为什么要造这个轮子?

PHP是世界上最好的变成语言,没有之一。 这句话虽然是一个梗但是他却代表了php这门语言在编程语言中的江湖地位。 既然是最好的语言,那么免不了就会出现各种各样的框架啦,包括php官方的ZendFrame, Laravel,Yii,包括国产的ThinkPHP,ci等框架。

那既然有这么多框架,为什么我们还要造这个轮子呢?原因有以下几点:

  1. 最初是基于教学的目的,这个项目脱胎于本人做 PHP 培训的时候给学员演示 Web 框架开发的学习项目,后面经过一系列完善成现在这个样子。
  2. 当时开源的 PHP 框架要么就过于重量级,像ZendFrame,ThinkPHP那样太过于臃肿,学习成本太高,要么就是扩展性和或性能达不到要求,使用起来不那么方便。
  3. 大部分 PHP 开源框架都是为了兼容高中低端各种用户而牺牲了框架本身的性能和特性,这显然没有办法完全满足公司的全部需求,而个人觉得修改大型框架是一件很痛苦的事情,跟自己开发的成本差不多。这估计也是很多大点的公司都有自己的框架的原因了。

HerosPHP 的设计思想

  1. 我们认为好的开发框架应该是方便,快捷,优雅,干净的,我们一直坚持:一个体验良好的工具应该是操作简单的,同时又是性能可靠的 的原则。 我们希望框架既能封装良好,降低开发者学习成本,同时又不损失系统性能,既能快速搭建系统又能保持良好的扩展性,目前我们最新的版本已经基本做到这一点。

  2. 严格遵循约定优于配置的设计原则,一个问题只保留一种你能够实现的最优解决方案 如非必要不给用户提供选择配置,直接按照最优配置实现,尤其是是4.0.0之后,这个原则会更加明显,我们认为配置太多只会是系统越来越臃肿,执行效率越来越低。

  3. 坚持 最小框架内核 原则,框架只实现最基本的功能,我们对增加功能始终保持极度克制的态度,这也符合"英雄"的本色,英雄只求单点突破,做到极致,将军追求面面俱到,面面俱到的结果就是自身越来越臃肿,难免"屠龙少年成为恶龙"的命运。因此,herosphp 的附加功能(比如文件上传,ORM,中间件等)都通过 composer 组件来实现,按需引入。

  4. 像其他框架一样,我们也会提供redis(缓存),Annotation(注解),files(文件处理),session(会话),middleware (中间件) 等开发过程中常用的工具的功能,跟其他框架不一样的是,我们还提供 Bean 容器托管和自动依赖注入...

HerosPHP 的特性

  1. 框架的原理简单易懂,使用和学习的成本低,想要二开也非常容易上手。
  2. 使用注解的方式实现路由,提供 Bean 容器,实现服务的自动注入,如丝般顺滑,提升开发效率。
  3. 良好的设计架构,保持性能强悍的同时,兼具良好的扩展性。
  4. 代码风格简洁漂亮,程序精简(内核代码不到 200K),注释详细,适合新手研究学习。

GitHub 源码地址

码云: http://git.oschina.net/blackfox/herosphp

GitHub: https://github.com/yangjian102621/herosphp

开发手册

请移步 HerosPHP 开发手册

联系作者

邮箱:yangjian102621@gmail.com

QQ:906388445

技术交流QQ群:137352247

博客 : 小一辈无产阶级码农

本地调试

你可以通过任何方式将 herosphp 放入你的本地目录,如/code/php/herosphp 然后在你的 app 项目的 composer.json 中加入如下配置

"repositories": [
        {
            "type": "path",
            "url": "/code/php/herosphp"
        }
    ],

然后在 app 根目录下运行

composer require 'herosphp/framework:*@dev'
MIT License Copyright (c) 2014 herosphp Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

herosphp 框架内核代码, 一个优秀的轻量级 php 开源框架 展开 收起
PHP
MIT
取消

发行版 (5)

全部

贡献者

全部

近期动态

加载更多
不能加载更多了
PHP
1
https://gitee.com/blackfox/herosphp.git
git@gitee.com:blackfox/herosphp.git
blackfox
herosphp
herosphp-framework
master

搜索帮助

14c37bed 8189591 565d56ea 8189591