YII2之获取当前路由字符串 可以在控制器中使用 $this->route
,获取当前action对象可以使用 $this->action
,获取当前控制器ID \Yii::$app->controller->id
获取当前模块ID,可以使用 $this->module->id
可以获取当前模块id
YII2之设置友好的路由,在配置文件中['urlManager' => ['enablePrettyUrl' =>true,'showScriptName' => false] ]
在yii2 中使用闭包校验器时,应该使用$this->addError($attribute,$message);
方法来添加校验失败信息,而不是使用return false;
在yii2 中模型类中获取最后插入的id.可以用以下几种方法:
1 . \Yii::$app->getDb()->lastInsertId;
2 . $model->attributes['id']
3 . $model->getOldAttribute("id")
((2,3中ID为主键,自增ID))
yii2 中对字符串进行转义使用yii\helpers\BaseHtml::encode($str)
方法对$str
进行转义.
yii2 中 打开性能调试 在配置文件中使用
if (YII_ENV_DEV) {
$config['bootstrap'][] = 'debug';
$config['modules']['debug'] = [
'class' => 'yii\debug\Module',
'allowedIPs' => ['127.0.0.1', '::1', '192.168.*.*'],
];
YII2 之手动使用验证码验证器进行校验的时候,可以使用如下的代码:
//$type, $model, $attributes
$validator = Validator::createValidator('captcha', $model, ['verifyCode']);
$needVerifyCode = $validator->validate(trim($_POST['verifyCode']));
YII2 之可以控制器的默认action ID是 index( 控制器中有public $defaultAction = 'index'
),默认的控制器ID是default(模块中有 public $defaultRoute = 'default';
)(这里的defaultRoute 可以更具体,如admin/post/create等)
Yii2 之获取Querybuilder 类的对象的时候,可以使用$builder = $db->getQueryBuilder();
来生成对应的对应的对象,然后再调用$builder->build($query);
来生成对应的sql
哎,分享经验是值得鼓励的,但是看你这个排版,是不打算让别人看你文章的意思吗?真的很乱。
找半个小时好好学一下 markdown 排版吧,真不难学。