Yii框架常用方法

Yii 处理表单的方法
1、通过yii\widgets\ActiveForm来创建表单,ActiveField与表单属性对应。
2、HTML帮助类,提供静态方法生成HTML标签;
3、别名:用别名来写路径,防止出错;
参考文献
<<权威指南 The difinitive guide to YII2.0>>
<<类参考手册 YII PHP framework version2>>

4、http://192.168.56.10/blogDemo/advanced/backend/web/index.php?r=gii
打开连接,启用Gii,开始创建model,controller

5、在blogDemo\advanced\backend\views\layouts\main.php
增加菜单栏

$menuItems = [
        ['label' => '文章管理', 'url' => ['/post/index']],
        ['label' => '评论管理', 'url' => ['/comment/index']],
        ['label' => '用户管理', 'url' => ['/user/index']],
        ['label' => '管理员', 'url' => ['/adminuser/index']],
    ];

6、ActiveRecord
一个AR类对应一个数据表,每个AR对象对应数据表中的一行。
AR对象的属性对应为数据行中的列;
可以以面向对象的方式直接操纵数据表中的数据,这样就能不写sql来实现对数据库的访问。

7、DetailView 用来显示类的示例的一个对象


template '<tr><th{captionOptions}>{label}</th><td{contentOptions}>{value}</td></tr>'
用来自定义DetailRecord的格式

8、魏曦在4.4有个回顾

9、ArrayHelper,帮助更好的操作数组;
getValue(),getColunm();
map()方法从一个一维或者多维数组中建立映射表;参数为需要建立的表和值

echo "<pre>";
print_r($obj1);
echo "</pre>";
exit(0);

10、查询构建器
查询构建器是建立在DAO基础之上的可以创建程序化的sql

如何使用构建器
1、创建一个 yii\db\query对象来代表一个select sql语句,然后构建查询条件
2、通过column(),all(),one()方法来执行从数据库中检索这些数据

User::find()->all();    //返回所有用户数据;
    //返回 主键 id=1  的一条数据;
User::find()->where(['name' => 'ttt'])->one();   //返回 ['name' => 'ttt'] 的一条数据;
User::find()->where(['name' => 'ttt'])->all();   //返回 ['name' => 'ttt'] 的所有数据;
User::findBySql('SELECT * FROM user')->all();  //用 sql  语句查询 user 表里面的所有数据;
User::findBySql('SELECT * FROM user')->one();  此方法是用 sql  语句查询 user 表里面的一条数据;
User::find()->andWhere(['sex' => '女', 'age' => '18'])->count('id');   //统计符合条件的总条数;
User::find()->one();    //返回一条数据;
User::find()->all();    //返回所有数据;
User::find()->count();    //返回记录的数量;
User::find()->average();   //返回指定列的平均值;
User::find()->min();    //返回指定列的最小值 ;
User::find()->max();   //返回指定列的最大值 ;
User::find()->scalar();    //返回值的第一行第一列的查询结果;
User::find()->column();    //返回查询结果中的第一列的值;

11、在XXSearch()方法里面增加分页功能

 $dataProvider = new ActiveDataProvider([
            'query' => $query,
            'pagination' => ['pagesize' =>6]
        ]);

12、dataProvider对于数据的排序

$dataProvider = new ActiveDataProvider([
            'query' => $query,
            'pagination' => [
                'pagesize' =>6,
            ],
            'sort' =>[
                'defaultOrder'=>[
                    'id' => SORT_ASC,
                ]
            ]
        ]);

13、打印模型错误 print_r($model->getErrors());
14、
/**
* [std_class_object_to_array 将对象转成数组]
* @param [stdclass] $stdclassobject [对象]
* @return [array] [数组]
*/
public static function std_class_object_to_array($stdclassobject)
{
$_array = is_object($stdclassobject) ? get_object_vars($stdclassobject) : $stdclassobject;
foreach ($_array as $key => $value) {
$value = (is_array($value) || is_object($value)) ? self::std_class_object_to_array($value) : $value;
$array[$key] = $value;
}
return $array;
}

15、使用yii2
http://admin.spa.com/index.php?r=gii%2Fdefault%2Fview&id=crud

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值