Php where子句中的多个参数
我需要为where子句附加多个参数。有没有办法通过推进来实现这一点。它给了我 条件:(错误:无法为表达式“LATITUDE”生成SQL,因为Criteria::RAW仅适用于包含单个问号占位符的子句) 这是我的问题Php where子句中的多个参数,php,sql,propel,Php,Sql,Propel,我需要为where子句附加多个参数。有没有办法通过推进来实现这一点。它给了我 条件:(错误:无法为表达式“LATITUDE”生成SQL,因为Criteria::RAW仅适用于包含单个问号占位符的子句) 这是我的问题 $userArray = UserQuery::create() ->where('( 3959 * acos( cos( radians(?) ) * cos( radians( User.latitude ) ) * cos( radians( User
$userArray = UserQuery::create()
->where('( 3959 * acos( cos( radians(?) )
* cos( radians( User.latitude ) )
* cos( radians( User.longitude ) - radians(?) )
+ sin( radians(?) )
* sin( radians( User.latitude) ) ) ) > 10',
$user->getLatitude(),
$user->getLongitude(),
$user->getLatitude()
)->find();
对于任何提到这一点的人。我能够使用以下代码实现这一点
$userArray = UserQuery::create()->where('( 3959 * acos( cos( radians(?) )
* cos( radians( User.latitude ) )
* cos( radians( User.longitude ) - radians(?) )
+ sin( radians(?) )
* sin( radians( User.latitude) ) ) ) < 10000',
array($user->getLatitude(),
$user->getLongitude(),
$user->getLatitude()))->find();
$userArray=UserQuery::create()->其中('(3959*acos(弧度(?)
*cos(弧度(用户纬度))
*cos(弧度(用户经度)-弧度(?)
+sin(弧度(?)
*sin(弧度(用户纬度))<10000',
数组($user->getLatitude(),
$user->getLongitude(),
$user->getLatitude())->find();
是否尝试将数组作为第一个参数传递给where方法?:) 是否尝试将数组作为第一个参数传递给where方法?是,它正在工作。试着添加一个我会接受的答案。