【发布时间】:2011-07-13 23:39:34
【问题描述】:
我正在为 PHP PDO 创建一个简单的查询构建器,以更快地创建查询,而无需对条件/订单/限制根据某些条件组合在一起的部分进行大量绑定和拆分查询创建过程(如过滤引擎) ,您可以在其中选择一些标准)。我有这样的方法:
$query->addWhere( 'uid', '>' , 100 );
添加 where 条件并将 :uid 绑定到 100,我也可以像这样省略 bindig:
$query->addWhere( 'date', '>' , 'NOW()' , false );
但我不带 100 参数类型的信息。更深入地执行查询,我不做 bindParam 或 bindValue,而是传递我的绑定表来执行:
$stmt->execute( $query->getBinds() );
我的所有参数都被视为 PARAM_STR 还是从数组中的变量类型获取 PDO 类型?我能失去什么?只有性能/内存或可能有一些数据丢失或逻辑错误?
附: 我不想为 params 创建另一个类,因为我想保持简单,我的意思是:
$query->addWhere( new Field('uid') , '=' , new IntParam( 100 ) ); or something
【问题讨论】:
-
我希望你正在清理输入。