Yii框架数据库查询、增加、删除操作示例


Posted in PHP onOctober 14, 2019

本文实例讲述了Yii框架数据库查询、增加、删除操作。分享给大家供大家参考,具体如下:

Yii 数据库查询

模型代码:

<?php
namespace app\models;
use yii\db\ActiveRecord;
class Test extends ActiveRecord{
}

控制器代码:

public function actionTest(){
    //方法一
    $sql = 'select * from test where id=:id';
    $data = Test::findBySql($sql,array(':id'=>1))->all();
    var_dump($data);//数组
    //方法二
    $data = Test::find()->where(['id'=>1])->all();
    var_dump($data);//复杂的对象信息
    // 查询条件>的使用
    $data = Test::find()->where(['>','id',1])->all();
    var_dump($data);//复杂的对象信息
    // 查询条件 between 的使用
    $data = Test::find()->where(['between','id',2,5])->all();
    var_dump($data);//复杂的对象信息
    // 查询条件 like 的使用
    $data = Test::find()->where(['like','title','title1'])->all();
    var_dump($data);//复杂的对象信息
    //查询结果对象转化为数组,使用asArray
    $data = Test::find()->where(['between','id',2,5])->asArray()->all();
    var_dump($data);//复杂的对象信息
    //批量查询,例如每次获取2条
    $data = array();
    foreach(Test::find()->asArray()->batch(2) as $tests){
      foreach($tests as $val){
        $data[] = $val;
      }
    }
    print_r($data);
  }

总结,主要注意防止sql注入的占位符的使用,各种查询条件的使用,转化数组的使用,批量查询的使用。

yii 数据库增加数据

模型代码:

<?php
namespace app\models;
use yii\db\ActiveRecord;
class Test extends ActiveRecord{
  public function rules()
  {
    return [
      ['title','string','length'=>[0,10]]
    ];
  }
}

控制器代码:

public function actionTest(){
    //添加数据
    $test = new Test;
    $test->title = '';
    $test->validate();
    if ($test->hasErrors()) {
      echo 'error';
    } else {
      $test->save();
    }
  }

结论:保存数据及验证数据。

yii 数据库删除数据

public function actionTest(){
    //删除
    //方法一
    $result = Test::find()->where(['id' => 1])->all();
    $result[0]->delete();
    //方法二
    Test::deleteAll('id>:id', array(':id' => 5));
  }

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
玩转虚拟域名◎+ .
Oct 09 PHP
php 5.3.5安装memcache注意事项小结
Apr 12 PHP
PHP中mb_convert_encoding与iconv函数的深入解析
Jun 21 PHP
PHP获取和操作配置文件php.ini的几个函数介绍
Jun 24 PHP
PHP中实现接收多个name相同但Value不相同表单数据实例
Feb 03 PHP
php实现读取内存顺序号
Mar 29 PHP
php简单生成随机数的方法
Jul 30 PHP
php实现的递归提成方案实例
Nov 14 PHP
php文件类型MIME对照表(比较全)
Oct 07 PHP
thinkPHP简单调用函数与类库的方法
Mar 15 PHP
PHP 7安装调试工具Xdebug扩展的方法教程
Jun 17 PHP
Laravel 错误提示本地化的实现
Oct 22 PHP
laravel框架上传图片实现实时预览功能
Oct 14 #PHP
解决laravel上传图片之后,目录有图片,但是访问不到(404)的问题
Oct 14 #PHP
yii框架数据库关联查询操作示例
Oct 14 #PHP
laravel实现上传图片并在页面显示的例子
Oct 14 #PHP
Thinkphp5.0 框架的请求方式与响应方式分析
Oct 14 #PHP
laravel 多图上传及图片的存储例子
Oct 14 #PHP
Laravel 5.4前后台分离,通过不同的二级域名访问方法
Oct 13 #PHP
You might like
菜鸟学PHP之Smarty入门
2007/01/04 PHP
PHP获取浏览器信息类和客户端地理位置的2个方法
2014/04/24 PHP
PHP与MYSQL中UTF8 中文排序示例代码
2014/10/23 PHP
php采用curl实现伪造IP来源的方法
2014/11/21 PHP
ZendFramework框架实现连接两个或多个数据库的方法
2016/12/08 PHP
PHP将数据导出Excel表中的实例(投机型)
2017/07/31 PHP
PHP中遍历数组的三种常用方法实例分析
2019/06/24 PHP
Yii框架数据库查询、增加、删除操作示例
2019/10/14 PHP
url地址自动加#号问题说明
2010/08/21 Javascript
onbeforeunload与onunload事件异同点总结
2013/06/24 Javascript
JavaScript作用域与作用域链深入解析
2013/12/06 Javascript
js鼠标滑过图片震动特效的方法
2015/02/17 Javascript
详解javascript中的事件处理
2015/11/06 Javascript
JS中使用mailto实现将用户在网页中输入的内容传递到本地邮件客户端
2016/10/08 Javascript
微信小程序自定义tabBar组件开发详解
2020/09/24 Javascript
bootstrap tooltips在 angularJS中的使用方法
2019/04/10 Javascript
JS中FileReader类实现文件上传及时预览功能
2020/03/27 Javascript
[02:01]BBC DOTA2国际邀请赛每日综述:八强胜者组鏖战,中国队喜忧参半
2014/07/19 DOTA
Python之list对应元素求和的方法
2018/06/28 Python
pandas 使用均值填充缺失值列的小技巧分享
2019/07/04 Python
Scrapy框架实现的登录网站操作示例
2020/02/06 Python
使用tensorflow实现矩阵分解方式
2020/02/07 Python
Python logging模块异步线程写日志实现过程解析
2020/06/30 Python
Python中正则表达式对单个字符,多个字符和匹配边界等使用
2021/01/27 Python
CSS3提交意见输入框样式代码
2014/10/30 HTML / CSS
HTML5实现可缩放时钟代码
2017/08/28 HTML / CSS
米兰网婚纱礼服法国网上商店:Milanoo法国
2016/08/20 全球购物
黄继光的英雄事迹材料
2014/02/13 职场文书
关于保护环境的建议书
2014/08/26 职场文书
暑期实践个人总结
2015/03/06 职场文书
工程质检员岗位职责
2015/04/08 职场文书
公共场所卫生管理制度
2015/08/05 职场文书
python实现监听键盘
2021/04/26 Python
sql server偶发出现死锁的解决方法
2022/04/10 SQL Server
详解SQL的窗口函数
2022/04/21 Oracle
详解flex:1什么意思
2022/07/23 HTML / CSS