次の列# Golangチュートリアル#は、共有変数のために犯された間違いを記録します。困っている友人に役立つことを願っています。
#問題はモデル/ユーザーで発生します。 php
var UserModel = new (User)
Controller
if models.UserModel.Token == "" { models.UserModel.Token = "hello world" }Because
var UserModel = new (User) のみ new 一度、この変数は各リクエストで共有されます。
結果として、このif は今後 1 回だけ実行されるか、素直に新しいポインターを
new することしかできません。
従順
新しい
var UserModel = new (models.User) if UserModel.Token == "" { UserModel.Token = "hello world" }
終了
問題を見つけるのに数時間かかりましたデバッグ、そして私は基本的な間違いを犯しました。
以上が共有変数が原因で犯した間違いを思い出してくださいの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。