goldwarden:AI Agent 工具实践指南
2026-09-11 3465802
2026-09-11 0
如果把paris放进候选清单,不能只看热度;它的定位是PHP5 的轻量级 Active Record 实现,构建于 Idiorm 之上。在日常自动化场景里,常见问题是输入边界、依赖和失败处理如果不清楚就很难稳定复用,这正是评估时需要盯住的地方。短测时我会用一项范围明确的真实任务完成最小试跑,并保留配置时间、输出质量、异常信息和维护痕迹的结果,方便团队复盘。我的判断是,它更适合愿意先做小范围验证并复查原始文档的团队;若眼下没有这类需求,先保留观察即可。
巴黎
https://j4mie.github.io/idiormandparis/
仅维护模式
自版本 1.5.0 起,Idiorm 和 Paris 现在被认为功能已完成。虽然它们将继续通过错误修复进行维护,但从此时起将不会添加更多新功能。这意味着,如果拉取请求对 API 进行了重大更改,或者需要库的补丁版本更新以外的任何内容,那么它将不会被合并。
请不要提交功能请求或 API 重大更改,因为它们将在没有仪式的情况下关闭。
我应该使用 Idiorm/Paris 吗?
如果您要开始一个新项目
不建议您在新项目中使用 Idiorm 或 Paris。
我建议您使用来自 Laravel 的 Eloquent 数据库库,因为 Taylor 在编写它时基于 Idiorm。 这意味着那里存在许多相同的想法,但它的维护更加积极,并且具有更现代的代码风格。
如果您有基于 Idiorm 或 Paris 的现有项目
您可以继续使用这两个项目,因为它们将继续接收安全补丁和错误修复。 请务必注意,如果 PHP 的未来版本所需的更改会破坏向后兼容性,则可能不受支持。
此时,您可以使用另一个数据库库,例如 Laravel 中的 Eloquent(请参阅上面的“如果您正在开始一个新项目”),或者您可以决定分叉 Idiorm和/或Paris,以使用您自己的修改来修补它们。
但为什么?
有关该项目状态的更多信息,请参阅 https://github.com/j4mie/idiorm/issues/360
PHP5 的轻量级 Active Record 实现。
构建于 Idiorm 之上。
在 PHP 5.2.0+ 上进行测试 - 可能适用于具有 PDO 和正确数据库驱动程序的早期版本。
根据 BSD 许可证 发布。
特点
文档
该文档托管在阅读文档上:paris.rtfd.org
构建文档
您需要安装 Sphinx,然后在 docs 文件夹中运行:
make html
该文档现在位于 docs/_build/html/index.html 中
让我们看一些代码
class User extends Model {
public function tweets() {
return $this->has_many('Tweet');
}
}
class Tweet extends Model {}
$user = Model::factory('User')
->where_equal('username', 'j4mie')
->find_one();
$user->first_name = 'Jamie';
$user->save();
$tweets = $user->tweets()->find_many();
foreach ($tweets as $tweet) {
echo $tweet->text;
}
变更日志
1.5.6 - 2017-03-21 发布
foreach 超过 find_many() 结果时允许 IDE 自动完成 [stratoss] - 问题 #1281.5.5 - 2016-12-14 发布
composer test) 以轻松运行测试 [Treffynnon]__unset() 魔术方法 [qyanu] - 问题 #1061.5.4 - 2014-09-23 发布
1.5.3 - 2014-06-25 发布
1.5.2 - 2014-06-23 发布
1.5.1 - 2014-06-22 发布
1.5.0 - 2014-06-22 发布
set() 和 set_expr() 方法 [naga3] - 问题 #941.4.2 - 2013-12-12 发布
用于删除损坏的拉取请求的补丁更新 - 可能会对 1.4.0 和 1.4.1 的用户产生影响,这些用户利用了在 1.4.0 中合并的“find_many() 现在返回一个以数据库主 ID 作为数组键的关联数组”更改。
1.4.1 - 2013-09-05 发布
1.4.0 - 2013-09-05 发布
User::find_many() - PHP 5.3 仅 [Lapayo] - 问题#62find_many() 现在返回一个关联数组,其中数据库主 ID 作为数组键 [Surt] - 请参阅提交 9ac0ae7 和 Idiorm 问题#1331.3.0 - 2013-01-31 发布
set_expr - 关闭 问题 #39is_new - 关闭 问题 #401.2.0 - 2012-11-14 发布
set() 中将属性设置为关联数组,请参阅 问题 #131.1.1 - 2011-01-30 发布
1.1.0 - 2011-01-24 发布
is_dirty方法1.0.0 - 2010-12-01 发布