我们知道,在php中,常用到的语句都是按照SQL的语句转变而来的,所以php语言和SQL有着必然的联系,而两者之间优势怎么互换的呢?本节将针对该问题进行讨论。
PHP的请求和响应
首先,我们来看一段拉锯某个主题列表的代码:
public function actionList() //拉取主题列表
{
$user = \Yii::$app->user->identity;
$title = \Yii::$app->request->get('title', null);
$fields = ['user_id', 'read_count',
'title', 'cover_pic', 'created_at', 'updated_at', 'id', 'is_delete'];
$query = Topic::find()->select($fields);
if ($title != null ) {
$query = $query->andWhere(['like', 'title', $title]);
}
$count = $query->count();
$pagination = new Pagination(['totalCount' => $count]);
$query->orderBy('created_at desc');
$list = $query->offset($pagination->offset)->limit($pagination->limit)->asArray()->all();
$result = array(
"code" => 0,
"msg" => "success"
);
$result["count"] = $count;
$result["list"] = $list;
return $this->asJson($result);
}
这段代码主要的功能是拉取相应列表,对应的列表名为Topic。其中使用到SQL查询语句的是:
$query = Topic::find()->select($fields);
if ($title != null ) {
$query = $query->andWhere(['like', 'title', $title]);
该语句的意思是,先定义一个$query变量,改变量是从数据库中查并显示在$fields中的字段,如果$title 不为空的情况下,则查询到含有title字样的数据并将其赋值给$query变量。
PHP和SQL关系