متد findByAttributes

استفاده از متد findByAttributes() در yii1

یکی از متد های CActiveRecord متد findByAttributes می باشد که یک رکورد(سطر) را بر اساس ویژگی ها و شرط های خواسته شده پیدا می کند:
که سه ۳ آرگومان دریافت می کند :

public static findByAttributes(array $attributes, mixed $condition='', array $params=array ( ))

همانطور که در کد بالا مشخص است این سه آرگومان به شرح زیر می باشندک

  1. attributes
    که به صورت آرایه دریافت میشود :
    array(‘status’=>1)
  2. condition
    پس از attributes به صورت mix استفاده می شود
    “status=1 AND cat_id=:cid”
  3. params
    که به صورت آرایه دریافت می شود . در صورتی که در condition استفاده شده باشد همانند مثال بالا
    array(“:cid”=>2)

مثال:

$result = User::model()->findByAttributes(
                         array('reset_key' => $user->reset_key), 
                         'reset_expires <= NOW()'
          );

استفاده از CDbCriteria

 $criteria = new CDbCriteria;
          $criteria->addCondition("current_date<=".now());
          $result = User::model()->findByAttributes(array('reset_key' =>$user->reset_key),$criteria);
Person::model()->findByAttributes(
    array('first_name'=>$firstName,'last_name'=>$lastName),
    'status=:status',
    array(':status'=>1)
);
Person::model()->findByAttributes(
    array('first_name'=>$firstName,'last_name'=>$lastName),
    array(
        'condition'=>'status=:status', 
        'params'=>array(':status'=>1)
    )
);

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *