The example in this article describes the method of finding a database for the criteria of YII model operations. Share to everyone for your reference, specific as follows:
Data Model Search methods:
Public Function Search ()
{
//Warning:please Modify the following code to remove attributes that
//should No t be searched.
$criteria =new Cdbcriteria;
$criteria->compare (' id ', $this->id);
$criteria->compare (' title ', $this->title,true); Supports Fuzzy Lookup
$criteria->compare (' content ', $this->content,true);//support for Fuzzy Lookup
$criteria->compare (' type ') , $this->type);
$criteria->compare (' user ', $this->user,true); Support Fuzzy Lookup
$criteria->compare (' status ', $this->status);
$criteria->compare (' Create_data ', $this->create_data,true); Support for Fuzzy Lookup return
new Cactivedataprovider ($this, Array (
' criteria ' => $criteria,
' pagination ' => Array (
' pageSize ' =>50,
),)
;
}
To define a comparison operation:
$criteria->compare (' create_time ', ' <= '. $this->endtime),
//create morning less than or equal to specified time
Define the fields to find:
The results of the lookup
$criteria->select = ' id,title,content,author,status,createtime ', or
you can define the $criteria in one of the following ways
- >select = array (' id ', ' title ', ' content ', ' author ', ' Status ', ' Createtime '),
Define a fill search condition:
Define condition
$criteria->select = ' Status=1 ',
//Add match
$criteria->compare (' title ', $this->title,true) ,
//Add a condition $condition can be an array, can be a string, and can omit
$criteria->addcondition ($condition, ' and '),
//Add in condition $ column is the field name
$criteria->addincondition (string $column, array $values, string $operator = ' and ')
//Add notin condition
$criteria->addnotincondition (string $column, array $values, string $operator = ' and ')
//Add like condition
$ Criteria->addsearchcondition (String $column, String $keyword),
//Add between condition
$criteria-> Addbetweencondition (String $column, String $valueStart, String $valueEnd, string $operator = ' and '),
Join Linked Table Query
$criteria->join = ' Left join users on Users.id=authorid ',
Order Query Result ordering:
$criteria->order = ' Createtime DESC ',
Group results grouped:
$criteria->group = ' ProjectID, Teamid ',
Having filtered group result grouping number:
$criteria->having = ' SUM (revenue) <50000 ',
For more information on YII-related content, readers who are interested in this site can view the topics: Introduction to YII Framework and summary of common skills, "Summary of PHP Excellent development framework", "Smarty Template Introductory Course", "Introduction to PHP object-oriented programming", "PHP string" Summary of Usage , "Php+mysql Database operation Introduction Tutorial" and "PHP common database Operation Skills Summary"
I hope this article will help you with the PHP program design based on the YII framework.