PHP的GraphQL类型系统如何定义

avatar
作者
猴君
阅读量:0

在PHP中定义GraphQL类型系统通常通过使用GraphQL PHP库来实现。下面是一个简单的示例:

use GraphQL\Type\Definition\ObjectType; use GraphQL\Type\Definition\Type;  // 定义一个用户类型 $userType = new ObjectType([     'name' => 'User',     'fields' => [         'id' => Type::int(),         'name' => Type::string(),         'email' => Type::string(),     ], ]);  // 定义一个查询类型 $queryType = new ObjectType([     'name' => 'Query',     'fields' => [         'user' => [             'type' => $userType,             'args' => [                 'id' => Type::nonNull(Type::int()),             ],             'resolve' => function ($root, $args) {                 // 根据用户ID获取用户信息                 // 这里可以是从数据库、API等地方获取数据                 return [                     'id' => $args['id'],                     'name' => 'John Doe',                     'email' => 'john.doe@example.com',                 ];             },         ],     ], ]);  // 创建GraphQL schema $schema = new Schema([     'query' => $queryType, ]); 

在这个示例中,首先定义了一个用户类型(User),包含id、name和email字段。然后定义了一个查询类型(Query),包含一个user字段,接受一个id参数,并返回相应的用户信息。最后创建了一个GraphQL schema,将查询类型指定为根查询类型。这样就定义了一个简单的GraphQL类型系统。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!