En PHP, lorsque nous devons transmettre l'intégralité de la chaîne JSON à un champ d'une structure imbriquée, il existe un moyen simple de le faire. Tout d’abord, nous devons nous assurer que nous avons décodé la chaîne JSON en un tableau ou un objet PHP. Nous pouvons ensuite utiliser la fonction json_encode() pour encoder à nouveau le tableau ou l'objet décodé dans une chaîne JSON. Ensuite, nous pouvons attribuer la chaîne JSON codée au champ cible. De cette manière, nous avons réussi à transmettre l’intégralité de la chaîne JSON aux champs de la structure imbriquée. Il s'agit d'une méthode simple mais efficace qui nous permet de traiter facilement les données JSON en PHP.
Je dois désassembler une chaîne json plate
data := `{"login":"Nickname","password":"some_pass","newPassword":"new_pass"}`
Entrez UpdatePasswordRequest
structure imbriquée :
type SignInRequest struct { Login string `json:"login"` Password string `json:"password"` } type UpdatePasswordRequest struct { NewPassword string `json:"newPassword"` SignInData SignInRequest `<tag>` }
Utilisez tout ce qui est possible <tag>
值将 data
解组到 result
var result UpdatePasswordRequest json.Unmarshal([]byte(data), &result)
donne vide Login
和 Password
:
result.SignInData.Login = "" result.SignInData.Password = ""
Comment dois-je définir <tag>
pour obtenir la valeur correcte pour le champ <tag>
以获得 Login
和 Password
字段的正确值?
如果您要使用 <tag>
?
Solution de contournement
🎜Si vous comptez utiliser le nom de<tag>
, votre json doit être imbriqué et non plat, comme ceci : 🎜
data := `{"newPassword":"new_pass", "myTag":{"password":"some_pass", "login":"Nickname"}}`
type SignInRequest struct { Login string `json:"login"` Password string `json:"password"` } type UpdatePasswordRequest struct { NewPassword string `json:"newPassword"` SignInRequest }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!