在 GoFrame 中,结构化参数是指将命令行参数、选项和参数解析为结构体对象。通过结构化参数,你可以定义一个结构体,表示命令行参数的结构,然后使用 gcmd.Parse 方法将命令行参数解析为该结构体对象。以下是结构化参数的基本使用方法:

1. 定义结构体:
   - 创建一个结构体,字段用于表示命令行参数、选项和参数。可以使用结构体标签指定字段与命令行参数的映射关系。
   package main

   import "github.com/gogf/gf/os/gcmd"

   type CommandOptions struct {
       Name string `json:"name"`
       Age  int    `json:"age"`
       Cmd  string `json:"cmd"`
   }

2. 解析结构体参数:
   - 使用 gcmd.Parse 方法将命令行参数解析为结构体对象。
   package main

   import (
       "fmt"
       "github.com/gogf/gf/os/gcmd"
   )

   type CommandOptions struct {
       Name string `json:"name"`
       Age  int    `json:"age"`
       Cmd  string `json:"cmd"`
   }

   func main() {
       // 定义结构体对象
       options := new(CommandOptions)

       // 解析命令行参数到结构体对象
       if err := gcmd.Parse(options); err != nil {
           fmt.Println("Parse error:", err)
           return
       }

       // 打印解析结果
       fmt.Println("Name:", options.Name)
       fmt.Println("Age:", options.Age)
       fmt.Println("Command:", options.Cmd)
   }

3. 命令行输入示例:
   - 使用如下命令行输入来测试结构化参数的解析:
   go run main.go --name=John --age=30 cmdValue

   输出结果: