PHPackages                             azhai/hack-igniter - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. azhai/hack-igniter

ActiveFramework[Framework](/categories/framework)

azhai/hack-igniter
==================

A example project extends of CodeIgniter v3.x

v2021.1.1(5y ago)29MITPHPPHP &gt;=5.4.6

Since Feb 26Pushed 4y ago1 watchersCompare

[ Source](https://github.com/azhai/hack-igniter)[ Packagist](https://packagist.org/packages/azhai/hack-igniter)[ RSS](/packages/azhai-hack-igniter/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependencies (8)Versions (7)Used By (0)

hack-igniter
============

[](#hack-igniter)

A example project extends of CodeIgniter v3.x

安装
--

[](#安装)

要求php v5.4及以上版本。

下载最新版本代码，解压并进入目录。

运行下面的命令（需要安装有 composer ），安装依赖包和开发依赖包。

```
composer install
```

配置
--

[](#配置)

开发环境的配置依然在 application/config/development 下

第一次务必修改 constants.php 中的网址和 database.php 中的数据库连接

生成Model
-------

[](#生成model)

设置好数据库连接后，回到安装目录（即 application 再往上一层目录），执行

```
php index.php gen model     #生成Model文件
php index.php gen fake      #写入演示数据
```

自动生成所有表的 Model 文件，放入数据库连接为名的子目录中，并且关联对应 Mixin 。

控制器流程
-----

[](#控制器流程)

按照 CodeIgniter 规范，访问网址会被对应到“模块/控制器/方法”上，但如果控制中含有

\_remap() 方法，则直接执行它。

我们在基础控制器 application/core/MY\_Controller.php 中，放置一个 \_remap() ，

它的流程是这样：

- 每个控制有个 context 的属性，类型为 array 。
- 如果对应的方法是私有或者保护方法，直接返回 404 错误，当前请求结束。
- 首先执行 initialize() 方法，返回结果作为 context 一部分。同时在这个方法中获取与URL相关的属性，或检查当前用户的权限。
- 接着执行网址中对应的公开方法，查询数据库等操作在这里实现，其结果也是 context 的一部分。
- 最后执行 finalize(）输出，会先找到对应模板文件，再用 context 中数据渲染模板。

进一步阅读
-----

[](#进一步阅读)

查看其他

- [快速入门](./docs/quick_start.md)

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~258 days

Total

5

Last Release

1951d ago

Major Versions

v0.9.7 → v2018.82021-01-05

v2018.8 → v2021.1.12021-01-05

### Community

Maintainers

![](https://www.gravatar.com/avatar/9c7f4fc0a8326cdbd8578af14861a6f46965074e037ca1f9a2ee94b4b630cbb3?d=identicon)[azhai](/maintainers/azhai)

---

Top Contributors

[![azhai](https://avatars.githubusercontent.com/u/47268?v=4)](https://github.com/azhai "azhai (105 commits)")

---

Tags

frameworkcmshack-igniter

### Embed Badge

![Health badge](/badges/azhai-hack-igniter/health.svg)

```
[![Health](https://phpackages.com/badges/azhai-hack-igniter/health.svg)](https://phpackages.com/packages/azhai-hack-igniter)
```

###  Alternatives

[symfony/symfony

The Symfony PHP framework

31.3k86.3M2.2k](/packages/symfony-symfony)[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[microweber/microweber

New generation CMS with drag and drop

3.4k13.8k1](/packages/microweber-microweber)[sproutcms/cms

Enterprise content management and framework

241.6k4](/packages/sproutcms-cms)[quantum/framework

The Quantum PHP Framework

402.8k1](/packages/quantum-framework)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
