siler
v1.7.9
作為 Siler 的替代品,它是一種輕量級且簡單的東西,可以作為開箱即用的 Swoole 庫使用,我強烈推薦 Nano!看看:https://nano.hyperf.wiki/#/en/
Siler 是一組通用的高階抽象,旨在為 PHP 中的聲明式程式設計提供 API。
作為一等公民的檔案和功能
零依賴,一切都在PHP內建函數之上
速度極快,無需額外開銷 -基準測試 1 、基準測試 2和基準測試 3
平面檔案和普通的 PHP 函數在生產級、高效能、可擴充、並發和非阻塞的 HTTP 伺服器上運行。
閱讀教學。
作曲家需要 leocavalcante/siler
就是這樣。實際上,Siler是一個函式庫,而不是一個框架(也許是一個微框架),整個程式的控制流程由你決定。因此,沒有隱藏的配置或預先定義的目錄結構。
使用 SilerFunctional 作為 λ; // 為了保持冷靜,不要使用非 ASCII 標識符 ;)use SilerRoute;Routeget('/', λputs('Hello, World!'));
不多不少。您甚至不需要告訴 Siler run
或類似的東西( puts
工作方式類似於延遲評估的echo
)。
使用 SilerRoute;使用 SilerHttpResponse;Routeget('/', fn() => Responsejson(['message' => '你好,世界!']));
Responsejson
函數會自動在回應頭中加入Content-type: application/json
。
Siler 為 Swoole 提供一流的支援。您可以定期使用 Swoole HTTP 伺服器的Route
、 Request
和Response
模組。
使用 SilerHttpResponse;使用 SilerRoute;使用 SilerSwoole;$handler = function () {Routeget('/', fn() => Responsejson('你好,世界!')); };$port = 8000;echo "監聽埠$portn";Swoolehttp($handler, $port)->start();
安裝對等依賴:
作曲家需要 webonyx/graphql-php
輸入查詢 {hello: String}
使用 SilerRoute;使用 SilerGraphQL;$type_defs = file_get_contents(__DIR__ . '/schema.graphql');$resolvers = ['Query' => ['hello' => fn ($root, $args, $context, $info) =>「你好,世界!」] ];$schema = GraphQLschema($type_defs, $resolvers);Routepost('/graphql', fn() => GraphQLinit($schema));
另一個同儕依賴:
作曲家需要學說/註釋
然後:
/** * @SilerGraphQLAnnotationObjectType() */最終類別查詢 {/** * @SilerGraphQLAnnotationField() */public static function hello($root, $args, $context, $info): string{return 'Hello, World!'; } }
使用 SilerGraphQL;使用 SilerRoute;$schema = GraphQLannotated([Query::class]);Routepost('/graphql', fn() => GraphQLinit($schema));
物件類型名稱將從類別名稱、欄位名稱和傳回類型中猜測(即:PHP string
標量===
GraphQL String
標量)。
文件
範例
麻省理工學院許可證
版權所有 2020 © LC