在PHP编程中,经常会遇到将字符串类型的变量用作整数值的情况。然而,根据PHP的语法规则,我们无法直接将一个字符串类型的变量作为整数值来使用,这将导致错误的结果。这个问题常常会让初学者感到困惑。因此,php小编柚子为大家带来了解决这个问题的方法。接下来,我们将详细介绍如何正确地将字符串类型的变量转换为整数值,以便在程序中正确地使用。
我正在学习使用 go 创建 rest api。这就是我被困住的地方。
用户结构
type user struct { id int `json:"id"` firstname string `json:"first_name"` lastname string `json:"last_name"` }
逻辑如下
params := httprouter.paramsfromcontext(r.context()) userid := params.byname("id") user := &user{ id: userid, }
错误
cannot use userid (variable of type string) as int value in struct literal
当用户发送获取请求时:
/user/:id
我尝试了同样的操作,但它也返回错误
user := &user{ id: strconv.atoi(int(userid)), }
错误
2-valued strconv.Atoi(int(userId)) (value of type (int, error)) where single value is expected
我找到了解决方案!我使用了 strconv.atoi()
userId, err := strconv.Atoi(params.ByName("id")) if err != nil { fmt.Println(err) } user := &user{ ID: userId, }
以上是无法使用 userId(字符串类型的变量)作为结构文字中的 int 值的详细内容。更多信息请关注PHP中文网其他相关文章!