谁一开始就是大神?

PHP 第9页

PHP

phpStorm升级后,会检查一些异常,这种应该怎么解决[2.0]

kenslim阅读(83)

phpStorm近期升级后,新增了些新的功能,导致打开项目后,有些会有异常提示甚至报错:
情况一:

Unhandled \yii\web\NotFoundHttpException less... (Ctrl+F1 Alt+T)
The inspection reports exceptions which are neither enclosed in a try-catch block nor documented using the '@throws' tag

如图:
企业微信截图_15135967806916.png

看官网上更新说明是这样的:
企业微信截图_1513596848842.png

这种写法有问题吗?
我是自己重写了findModel方法:

/**
     * Finds the OrderMain model based on its primary key value.
     * If the model is not found, a 404 HTTP exception will be thrown.
     * @param integer $id
     * @return OrderMain the loaded model
     * @throws NotFoundHttpException if the model cannot be found
     */
    protected function findModel($id)
    {
        if (($model = OrderMain::findOne($id)) !== null) {
            return $model;
        } else {
            throw new NotFoundHttpException('The requested page does not exist.');
        }
    }

情况二:

Arbitrary expressions in empty are allowed in PHP 5.5 only less... (Ctrl+F1 Alt+T)
Checks that language features used in the source code correspond the selected language level. (i.e. traits can be used only in PHP 5.4)

企业微信截图_15135972702537.png

情况三:
TIM截图20171218194206.png

这种形式我一直在用,而且现在也不会报错,只是在编辑器的时候就会报错

首先 在phpstorm里面设置下php的版本
function前面的 /* 加上’@throws’标签
关闭phpstorm错误提示
/**

有在yii2下用easyWeChat开发的么[2.0]

Tinahappy阅读(90)

实在搞不定,按easyWeChat文档的示例代码里写的,有哪位分享下网页授权代码?万分感谢~

`<?php
namespace backend\controllers;
use Yii;
use \yii\web\Controller;
use yii\web\HttpException;
use backend\models\WechatUser;
use EasyWeChat\Server\BadRequestException;
class WebchatController extends Controller
{
}`
同问
Add the SDK as a yii2 application component in the config/main.php:
‘components’ => [
]
// 微信网页授权:
if(Yii::$app->wechat->isWechat && !Yii::$app->wechat->isAuthorized()) {
}
同问,学习学习
www.rageframe.com 最新版本基于EasyWechat 4.x
为什么我的验证成功,但是发消息,无法提供服务?

在表单修改时,怎么给下拉框加上默认选中[2.0]

Oldapple阅读(85)

<?= $form->field($model,'type')->dropDownList($type)->label(false);?>

两种方式
只要保证$type是数组,你这样写已经可以了
`<?= $form->field($model,’type’)->dropDownList($type,[
])->label(false);?>`
不清楚,我只是路过~
把默认值赋值给select,,,<?=Html::dropDownList(‘name’,’默认值’,$arr)?>

YII2Redis应用[2.0]

Kindlemon阅读(87)

刚开始接触redis,已经配置好了,目前主要是用set和get方法,但是突然发现保存后的key就一直存在,怎么让它过期自动删除呢,还有就是,在代码里怎么查看现在已经存在的key呢?

1、首先配置你的缓存组建为redis
`
2、设置缓存时要加上有效时间 例如一小时
$cache->set($key, $data, 1*60*60);
过期了,你就get不到了,缓存组件会自动回收删除的,你不需要管,(Redis本身就支持设置key的过期时间)。
自动过期不是有时间设置吗?已经存在在 key 用 EXISTS
使用expire给key设置过期时间
你这个代码里查看已存在的key是什么意思。redis你设置了哪个key就去使用这个key啊。
查看所有key在redis服务中看。keys *
有啥好用的?
可以,学习一下

yii2.0用post调用接口后怎么在接口中获取post传输过来的数据[2.0]

acgEagle阅读(86)

yii2.0用post调用接口后怎么在接口中获取post传输过来的数据

GET
Yii::$app->request->get();
POST
Yii::$app->request->post();
request
Yii::$app->request->request();
Yii::$app->request->post();
用post调用接口,这个说法很不正确,
接口获取post的数据:
Yii::$app->request->post();

用ar查询可以优先级吗[2.0]

youthfrog阅读(90)

默认是and优先级高于or,但我想把or放到跟in同一级,and在下一级,要如何写

不太清楚你的使用场景,建议多结合自己项目的业务场景+yii2debug插件 或者 自行使用getRawSql方法进行调试
这边提供一小段测试代码(其中的表名及字段名均无实际意义)
执行结果
顺便提下就是 AR查询条件的默认优先级,其实这个并没有所谓的默认优先级。查询条件的组合,取决于你的使用顺序。

后台冻结用户账户后如何能够让还处在登录状态的用户退出[2.0]

Hazelelephant阅读(89)

管理员更改用户状态是在数据库中操作,而用户登录之后会话状态保存在session中,总不能用户刷新一个页面每次都要查询用户表数据库看用户的账户状态吧,各位大神有何解决方案?

框架本身只要登录状态每次都会查询一次user表,不然这个删除了这个用户他继续操作就会出错。
加个字段status在基类判断一下就好了,直接从Yii::$app->user->identity->status取就不会再多一次查询了
很显然,解决的方法就是:删除服务端的session。
如何删除?
登录之后获取session_id的值,当在后台删除这个用户的时候,服务端删除这个session_id文件,当然如果使用redis就更加方便了。

hasEroors和validate[2.0]

Anilemon阅读(95)

他们的区别是什么 分别在什么地方用?都是用来验证规则的吗?按照我的理解是validate必须和load一起用 理解的对吗 大牛们给解释一下呗

规则验证,when为什么会无效[2.0]

acgfans阅读(92)

models 里的 users模型:

    public function rules(){
        return [
            ['username', 'required', 'when' => function($model) {
                return $model->email=='abc';
            }]
        ];
    }

view:
5F11F7C3-0A0C-4865-8FE8-8BBA0537B2FA.png

1111111.png

问题:如图所示。我已经在邮件输入了abc,或输入其他都会验证。为什么呢?

whenClient 值写得有问题吧?
你这个不是验证username吗?你填写的是email
你model里面写的是验证规则,这个规则如果你save()的时候应该是可以的。
页面上这块是前端验证,你可以把前端的验证规则临时禁用下试试、、、

登录

找回密码

注册