prwhyman/pulse
Composer 安装命令:
composer create-project prwhyman/pulse
包简介
Generic wrapper for SQL connections, trying to unify syntax across PHP's many drivers.
README 文档
README
Providing a standard and clean format across the many flavors of SQL supported by PHP
I began working on Pulse while, during a project, I was maintaining three distinct SQL databases. I needed the syntax to be standardised in the code so that -- as I migrated the data from one database engine to another -- I would not have to modify the business logic. I had looked into PDO but found I couldn't get along with the syntax, hence creating my own solution.
Pulse works by having a main "Command" class which is abstracted into different "Drivers" (though under the hood they just use the drivers you're already familiar with). This means that all the commands you send to the database use an easy to remember, clean and safe-to-use syntax.
Pulse does not allow for raw queries, every query you write is first prepared and then sent to the database. This means you will not be able to write multi-queries. There are a few reasons for this, however I would strongly advise you become familiar with stored procedures and functions if you intend to use Pulse. Most databases utilize optimizations for these types of queries and are, in my opinion, better practice than huge queries in your code base.
Pulse also provides both a simple Model class and an accompanying QueryBuilder, should you choose to use these. I will eventually write documentations for the functions it provides.
Example Pulse Query:
$con
->select(['thread_id', 'post_no], 'post_no')
->from('thread')
->where('date_deleted IS NULL AND board_id = ?')
->limit()
->offset()
->vars($boardID, 20, 1)
->query();
Why Pulse?
- Ease of Use: Pulse uses a SQL-focused syntax, making it much easier to read what your query is doing without having to write large chunks of code or write "dynamic sql" / query-building functions.
- Safety: Every query goes through prepared statements, raw queries are not yet supported nor do I plan on supporintg these.
- Less Boilerplate: Pulse handles most boiler-plate for you, including the binding of parameters. This does mean you need to better validate your parameters types however.
prwhyman/pulse 适用场景与选型建议
prwhyman/pulse 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 0 次下载、GitHub Stars 达 0, 最近一次更新时间为 2026 年 03 月 13 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 prwhyman/pulse 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 prwhyman/pulse 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 32
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Unlicense
- 更新时间: 2026-03-13