기본적으로 Swoole과 함께 라이브러리로 작동하는 가볍고 간단한 Siler의 대안으로 Nano를 적극 추천합니다! 확인해보세요: https://nano.hyperf.wiki/#/en/
Siler는 PHP의 선언적 프로그래밍을 위한 API를 목표로 하는 범용 고급 추상화 세트입니다.
일류 시민으로서의 파일 및 기능
종속성 제로 , 모든 것이 PHP 내장 함수 위에 있습니다.
엄청난 속도 , 추가 오버헤드 없음 - 벤치마크 1 , 벤치마크 2 , 벤치마크 3
프로덕션 등급의 고성능, 확장 가능, 동시 및 비차단 HTTP 서버에서 작동하는 플랫 파일 및 기존 PHP 기능입니다.
튜토리얼을 읽어보세요.
작곡가에게는 leocavalcante/siler가 필요합니다.
그게 다야. 실제로 Siler는 프레임워크(아마도 마이크로 프레임워크)가 아닌 라이브러리이므로 전체 프로그램 제어 흐름은 사용자가 결정합니다. 따라서 숨겨진 구성이나 사전 정의된 디렉터리 구조가 없습니다.
SilerFunctional을 λ로 사용합니다. // 편의상 ASCII가 아닌 식별자를 사용하지 마세요. ;)use SilerRoute;Routeget('/', λputs('Hello, World!'));
그 이상도 그 이하도 아닙니다. Siler에게 run
하라고 지시할 필요도 없습니다( puts
느리게 평가된 echo
처럼 작동합니다).
SilerRoute 사용; SilerHttpResponse;Routeget('/', fn() => Responsejson(['message' => 'Hello, World!']));
Responsejson
함수는 응답 헤더에 Content-type: application/json
자동으로 추가합니다.
Siler는 Swoole에 대한 최고 수준의 지원을 제공합니다. Swoole HTTP 서버에 대해 Route
, Request
및 Response
모듈을 정기적으로 사용할 수 있습니다.
SilerHttpResponse 사용; SilerRoute 사용; SilerSwoole 사용;$handler = function () {Routeget('/', fn() => Responsejson('Hello, World!')); };$port = 8000;echo "$portn 포트에서 수신 중";Swoolehttp($handler, $port)->start();
피어 종속성을 설치합니다.
작곡가에게는 webonyx/graphql-php가 필요합니다.
쿼리 {hello: 문자열}을 입력하세요.
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
스칼라)에서 추측됩니다.
선적 서류 비치
예
MIT 라이센스
저작권 2020 © LC