gpt4 book ai didi

php - Yii findByAttributes() 具有大于属性。

转载 作者:行者123 更新时间:2023-12-03 00:48:42 24 4
gpt4 key购买 nike

我已经使用 Yii 一段时间了,当我想从数据库中提取数据时,我通常只使用 findByAttributes。

$model=Auction::model()->findAllByAttributes(array('status'=>'1'));

或者类似的东西。

我的问题是,我将如何处理大于类型的情况?我试过了

$model=Auction::model()->findAllByAttributes(array('starttime'>=$date));

其中日期已分配当前日期/时间设置,但这会导致错误。所以我的问题是我是否需要使用条件和/或参数?我应该在模型中执行此类操作和/或使用 Criteria 或 CActiveDataProvider 内容吗?

我希望有人能指出我正确的方向。我一直都是通过使用 findAll() 来实现的,但我知道它们是更好的方法。关于什么以及何时使用属性、条件、参数等的一些一般信息也很好。

我已经阅读了 Yii 文档并搜索了大量网站来寻找这些问题的答案,但我没有找到。

最佳答案

即使与 findByAttributes 一起使用参数也是一个好主意,但这只会进行匹配。您可以使用 findAll 并添加条件语句,其格式与您已经执行的操作非常相似:

$model=Auction::model()->findAll(array(
'condition'=>'status=:status AND starttime >= :date',
'params'=>array(':status'=>1, ':date'=>$date),
));

如果您正在执行非常复杂的查询或以编程方式构建查询,您可能需要使用 findAllBySql 或 CDbConnection::createCommand 或 Query Builder ,这仅取决于什么对您的应用最有意义。

我会(重新)阅读 Working with Databases 上的 Yii 部分,虽然没有大量的例子,但已经很清楚了。然后你可以尝试一下 Yii Blog 教程,Larry Ullman's tutorials

关于php - Yii findByAttributes() 具有大于属性。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7314284/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com