slim4-mod/auto-route-conn
Composer 安装命令:
composer require slim4-mod/auto-route-conn
包简介
Slim4-Mod bổ sung auto-route và connect-db - sử dụng như MVC với Twig view - tích hợp SlimAsset
README 文档
README
Tác giả: Phi Hùng - vmkeyb908@gmail.com - (VN) 0974 471 724
Slim4-Mod bổ sung auto-route và connect-db - sử dụng như MVC với Twig view - tích hợp SlimAsset, nó giữ nguyên cấu trúc thư mục của slim4 gốc nhưng đã hiệu chỉnh một số file mẫu.
Các bổ sung và hiệu chỉnh là tối thiểu dể bạn có thể sử dụng slim4 tương tự như các framework-MVC thông dụng.
Đặc biệt: Nó sẽ nạp các route với tính chất động (dynamic) mỗi khi người dùng gõ vào một URL nào đó. Do vậy hệ thống sẽ hoạt động nhanh và ít tốn bộ nhớ vì không mất qui trình "init" chưa cần dùng đến.
Cài đặt:
composer require slim4-mod/auto-route-conn "dev-master"
Cách sử dụng:
Dùng tiện ích dòng lệnh để tự động tạo cấu trúc file cần thiết cho model mới (NEW_MODEL).
new-model <tên_model_mới>Sau khi chạy tiện ích xong bạn có thể gõ 'localhost/newModel' vào trình duyệt để thử ngay.
Muốn tham khảo đủ tính năng, bạn cần làm 2 việc chính để sử dụng như MVC-framework:
1- Đến thư mục src/domain/NEW_MODEL và thiết kế bổ sung ORM cho file NEW_MODEL.php
2- Tạo bảng tương thích với NEW_MODEL.
Bạn không cần phải quan tâm đến router, chỉ code các action (Đến thư mục src/application/actions/NEW_MODEL để thiết kế các action, các setup route cho từng action sẽ được đặt ngay trước class như trong mẫu) cho từng model và đặt tên như qui định ở dưới.
- Qui định bắt buộc:
- Cấu trúc thư mục như slim4 gốc (xem mẫu model Product)
- Tên các chức năng của Product phải có chữ đầu tiên là viết in hoa và nối phía sau là Action (ex: ListAction.php, RowAction.php, ...)
Chạy thử: Bạn có thể gõ các địa chỉ thử nghiệm như dưới.
-
Liệt kê toàn bộ bảng product:
- localhost/product/list
-
Xem thông tin một hảng (có id=2):
- localhost/product/row/2
-
Xem product/index:
- localhost/product
-
v.v...
Cấu hình:
-
Chèn vào \public\index.php:
-
Khai báo thêm use:
use \Invoker\CallableResolver as InvokerCallableResolver; use Slim\Interfaces\CallableResolverInterface;
-
Chèn kết nối database: (sau đoạn)
// Set up repositories $repositories = require DIR . '/../app/repositories.php'; $repositories($containerBuilder);
// Set up PDO and doctrine-entity $diConn = require __DIR__ . '/../app/di-conn.php'; $diConn($containerBuilder); -
Chèn DI-Bridge (Không dùng slim-bridge vì lỗi với tham số url): (thay thế sau đoạn)
// Instantiate the app //from... AppFactory::setContainer($container); //from... $app = AppFactory::create();
$container->set(CallableResolverInterface::class, new InvokerCallableResolver($container)); //?? $app = AppFactory::createFromContainer($container); $container->set(App::class, $app);
-
-
Sửa đổi \App\Settings\route.php:
- Chèn auto-route: (sau đoạn)
$app->options('/{routes:.*}', function (Request $request, Response $response) { // CORS Pre-Flight OPTIONS Request Handler return $response; });
Ghi chú: Có thể rào lại toàn bộ $app->get(...) của bản gốc và chỉ dùng duy nhất 1 cấu hình route như dưới.
$autoController = require '..\src\Base\AutoController.php'; $aUri = explode('/',$_SERVER['REQUEST_URI'] . '/'); $autoController($app, $aUri[1], $aUri[2]);
Chú thich: Các tính năng đang trong quá trình thiết kế do vậy cần sự đóng góp của mọi người. Thanks!
Tác giả: Phi-Hùng - vmkeyb908@gmail.com - Readme v.1.0
slim4-mod/auto-route-conn 适用场景与选型建议
slim4-mod/auto-route-conn 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 0 次下载、GitHub Stars 达 0, 最近一次更新时间为 2024 年 05 月 12 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「slim」 「slim route」 「slim connect」 「slim conn db」 「slim4 route」 「slim4 conn」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 slim4-mod/auto-route-conn 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 slim4-mod/auto-route-conn 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 slim4-mod/auto-route-conn 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Secure session middleware for Slim 3 framework
Customize JWT claims in Laravel Passport access tokens
Provide a way to secure accesses to all routes of an symfony application.
Write down your routing mapping at one place
A Laravel-like router for the WordPress Rewrite API
Adds request-parameter validation to the SLIM 3.x PHP framework
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 9
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-05-12