2017-02-13 / Yii2

文本框:textInput();
密码框:passwordInput();
单选框:radio(),radioList();
复选框:checkbox(),checkboxList();
下拉框:dropDownList();
隐藏域:hiddenInput();
文本域:textarea([’rows’=>3]);
文件上传:fileInput();
提交按钮:submitButton();
重置按钮:resetButtun();

阅读全文...
2017-02-13 / Yii2
下拉搜索
日期格式化并实现日期可搜索
根据参数进行是否显示
链接可点击跳转
显示图片
html渲染
自定义按钮
设定宽度等样式
自定义字段
自定义行样式
增加按钮调用js操作
yii2 GridView 下拉搜索实现案例教程
yii2 GridView 日期格式化并实现日期可搜索 案例
是否显示某列案例
阅读全文...
2017-02-13 / Yii2
直接 model 删除

$model = User::find($id);
$model->delete();


带有条件的删除

$connection ->createCommand()
            ->delete('tbl_user', 'status = 0')
            ->execute();


使用 Query 查询删除

$connection ->createCommand('DELETE FROM tbl_user WHERE userid=:userid')
            ->execute();

阅读全文...
2017-02-13 / Yii2
默认预定义别名一共有12个,其中路径别名11个,URL别名只有 @web 1个:

@yii 表示Yii框架所在的目录,也是 yii\BaseYii 类文件所在的位置;

@app 表示正在运行的应用的根目录,一般是 digpage.com/frontend ;

@vendor 表示Composer第三方库所在目录,一般是 @app/vendor 或 @app/../vendor ;

@bower 表示Bower第三方库所在目录,一般是 @vendor/bower ;

@npm 表示NPM第三方库所在目录,一般是 @vendor/npm ;

@runtime 表示正在运行的应用的运行时用于存放运行时文件的目录,一般是 @app/runtime ;

@webroot 表示正在运行的应用的入口文件 index.php 所在的目录,一般是 @app/web;

@web URL别名,表示当前应用的根URL,主要用于前端;

@common 表示通用文件夹;

@frontend 表示前台应用所在的文件夹;

@backend 表示后台应用所在的文件夹;

@console 表示命令行应用所在的文件夹;

其他使用Composer安装的Yii扩展注册的二级别名。

这样,在整个Yii应用中,只要使用上述别名,就可方便、且统一地表示特定的路径或URL。

阅读全文...
2017-02-13 / Yii2
 required : 必须值验证属性

[[’字段名’],required,’requiredValue’=>’必填值’,’message’=>’提示信息’]; #说明:CRequiredValidator 的别名, 确保了特性不为空.


email : 邮箱验证

[’email’, ’email’]; #说明:CEmailValidator的别名,确保了特性的值是一个有效的电邮地址.


match : 正则验证

[[’字段名’],match,’pattern’=>’正则表达式’,’message’=>’提示信息’];      

[[’字段名’],match,’not’=>ture,’pattern’=>’正则表达式’,’message’=>’提示信息’]; /*正则取反*/ #说明:CRegularExpressionValidator 的别名, 确保了特性匹配一个正则表达式.

阅读全文...
2017-02-13 / Yii2
//获取当前路径 - 相对路径

$url = Url::current();
例:/mobile/hmConnections/user/verify-user


//获取当前路径 - 相对路径

$url = Url::current([’id’ => 1], false);
如: /mobile/hmConnections/user/verify-user?id=1


//获取当前路径 - 绝对路径

$url = Url::current([’id’ => 1], true);
如: http://000000.com/mobile/hmConnections/user/verify-user?id=1

阅读全文...
2017-02-13 / Yii2
yii2访问控制过滤器accessRules使用方法总结

访问控制过滤器是检查当前用户是否能执行访问的controller action的初步授权模式。这种授权模式基于用户名,客户IP地址和访问类型。
访问控制过滤器,适用于简单的验证。需要复杂的访问控制,需要使用基于角色访问控制(role-based access (RBAC))。

打在最前面,如下摘自yiichina里面,估计是yii2普通版本的方式,我没具体研究,如下为高级模板的siteController控制器里的权限控制方式,写法有不同,

    /**
     * @inheritdoc
     */
    public function behaviors()
    {
        return [
            ’access’ => [
                ’class’ => AccessControl::className(),
                ’rules’ => [
                    [
                        ’actions’ => [’login’,’error’,’captcha’],
                        ’allow’ => true, //直接允许访问,captcha不加在下面的actions里,不然会出现验证码不显示的问题
                    ],
                    [
                        ’actions’ => [’logout’, ’index’],
                        ’allow’ => true,
                        ’roles’ => [’@’], // @ 表示验证通过的用户才有权限 * 任何用户  ? 匿名用户
                    ],
                ],
            ],
            ’verbs’ => [
                ’class’ => VerbFilter::className(),
                ’actions’ => [
                    ’logout’ => [’post’],
                ],
            ],
        ];
    }

阅读全文...
2017-02-12 / Yii2
AR查询输出当前查询SQL
$query = $model->find()->where([’status’=>1]);
echo $query->createCommand()->getRawSql();
阅读全文...
2017-02-11 / Yii2

Yii2自带验证码使用详细例子,测试了好久,终于弄成了,可以自由控制验证码图片的样式,css样式,验证码输入框属性调整,验证码手动校验或自动校验
Yii2自带验证码, 可以直接就使用, 头一次用弄了老长时间,总算可以随意用了,
 

1.控制器controller
在要使用验证码的控制器controller里面重写方法actions(),有的控制器里默认重写了,不要重复

/**
 * @inheritdoc
*/
public function actions()
{
    return [
         ’captcha’ => [
                ’fixedVerifyCode’ => YII_ENV_TEST ? ’testme’ : null,
                ’maxLength’ => 4, //最大显示个数
                ’minLength’ => 4,//最少显示个数
                //’backColor’=>’#f7feec’,//背景颜色
                //’foreColor’=>0xffffff,     //字体颜色
                //’padding’ => 5,//间距
                ’height’=>30,//高度
                ’width’ => 70,  //宽度
                //’offset’=>4,        //设置字符偏移量 有效果
         ],
     ];
 }
阅读全文...
2017-02-10 / Yii2
Yii2 yiidbQuery()查询方法总结,包含where limit 部分字段,排序等

        $data = (new yiidbQuery())
                    ->select(['id','user','ip','dateline'])
                    ->from('`i_comment`')
                    ->where(['id'=>$id])
                    ->offset($start)
                    ->limit($size)
                    ->orderby('id desc')
                    ->all();

阅读全文...