cawaphp / cawa
该软件包已被弃用且不再维护。没有建议的替代软件包。
Сáша 框架
dev-master
2018-08-17 07:53 UTC
Requires
- php: ~7.1
- ext-intl: *
- ext-mbstring: *
- behat/transliterator: ~1.1
- cakephp/chronos: ^1.0
- giggsey/libphonenumber-for-php: ~8.1
- jeremykendall/php-domain-parser: ~5.1
- nesbot/carbon: ~1.33
- psr/log: ~1.0
- punic/punic: ~3.1
- symfony/translation: ~4.0
Requires (Dev)
- phpunit/phpunit: ~7.0
This package is not auto-updated.
Last update: 2023-12-23 14:46:39 UTC
README
PHP7 Hmvc 框架,专为性能和简单性而构建
Сáша 是一个完整的 HMVC 框架,用于 PHP。它基于两个概念:简单性和性能。
性能:一切都有时间记录,以便快速找到瓶颈。
简单性:为了避免过多的抽象,我做出了一些有争议的选择。过多的抽象往往会导致加载大量的 PHP 类/接口,而 PHP 是在每次请求时诞生和死亡,编译/运行时间(即使在 opcache 的情况下)也会很慢。
警告
请注意,此软件包仍在积极开发中。可能会发生一些破坏性更改。感谢您的理解。
安装
使用以下命令安装最新版本:
$ composer require cawa/cawa
基本用法
use Cawa\Core\HttpApp; use Cawa\Router\Route; putenv('APP_ENV=' . HttpApp::DEVELOPMENT); $app = HttpApp::create(__DIR__); $app->init(); HttpApp::router()->addRoutes([ Route::create()->setName("main")->setMatch("/{{O:<name>[A-Za-z0-9]+}}")->setController(function(array $args = array()) { return "Hello " . ($args["name"] ?? "Guest"); }), ]); $app->handle(); $app->end();
特性
- HMVC 框架:因为简单的 MVC 不好用
- 模板:支持 PhtmlTrait 和 Twig 模板引擎
- Http 路由器:严格类型 http 路由器,具有本地化 url、控制器和回调
- 错误处理器:捕获所有错误并使用美观的 HTML 输出
- Intl 和 l18n:非常简单的键值存储 v
- 事件:因为事件很酷,并且有助于在您的应用程序中添加计时器
- Db:不依赖于 PDO 的抽象层
- HttpClient:一个简单的工作 http 客户端
- 缓存:Redis 和 Apc 缓存抽象
- 日志:PSR3 日志记录器,带有 syslog 处理器(其他即将到来)
- 会话:不使用 PHP 会话处理器的文件会话(db 等即将到来)
- 集合:可过滤、可排序的可调用对象
- 电子邮件:使用 Swift_Mailer 作为后端
- 日期:使用 Carbon 作为后端
关于
性能
我的第一个基准测试可以在每秒 6k 次查询下运行简单的 hello world。在相同的硬件上,我以每秒 350 次查询的速度运行了 symfony3 简单的 hello world 应用程序。
计划支持以下库之一以提升性能:
要求
许可
Cawa 使用 GPL v3 许可证授权 - 有关详细信息,请参阅 LICENSE
文件。