下面由golang教程栏目给大家记一次因为共享变量的犯错误,希望对需要的朋友有所帮助!

记一次因为共享变量的犯错误-LMLPHP

问题复现

在models/User.php

var UserModel = new (User)
登录后复制

控制器

    if models.UserModel.Token == "" {
        models.UserModel.Token = "hello world"
    }
登录后复制

因为 var UserModel = new (User) 只会new 一次,每个请求都共享的这个变量的。

导致以后这个 if 只会执行一次,还是只能乖乖的 new 一个新的指针。

乖乖的 new

    var UserModel = new (models.User)
    if UserModel.Token == "" {
        UserModel.Token = "hello world"
    }
登录后复制

结尾

花费几小时 debug 才找到问题的,犯了基础的错误。

以上就是记一次因为共享变量的犯错误的详细内容,更多请关注Work网其它相关文章!

08-23 17:03