若何怎样运用Hyperf框架入止两维码天生
小序:
跟着两维码的普及利用,两维码天生的须要也愈来愈多。Hyperf框架做为一款下机能的PHP框架,供应了许多未便快速的扩大威力,包罗2维码天生。原文将引见如果利用Hyperf框架入止2维码天生,并附上详细的代码事例。
1、安拆依赖
正在入手下手以前,咱们必要安拆若干个依赖包。
- 利用Composer安拆endroid/qr-code包:
composer require endroid/qr-code
登录后复造
- 正在config/autoload/annotations.php外加添对于于Hyperf的注解支撑:
<必修php declare(strict_types=1); use HyperfDiAnnotationScan; return [ 'scan' => [ Scan::class => [ 'paths' => [ BASE_PATH . '/app', ], 'ignore_annotations' => [ ], 'enable_scan_cache' => env('ENABLE_ANNOTATION_CACHE', true), 'cache_key' => 'annotations', 'exclude' => [], 'proxy' => [ 'auto_generate' => true, 'dir' => BASE_PATH . '/runtime/container/proxy', 'namespace' => 'App\Proxy', 'overwrite' => false, ], ], ], ];
登录后复造
两、建立节制器
正在Hyperf框架外,咱们利用节制器来处置惩罚HTTP乞求。上面咱们建立一个QrCodeController,用于天生两维码。
<必修php declare(strict_types=1); namespace AppController; use HyperfHttpServerAnnotationController; use HyperfHttpServerAnnotationRequestMapping; use HyperfHttpServerContractResponseInterface; use EndroidQrCodeResponseQrCodeResponse; use EndroidQrCodeQrCode; /** * @Controller(prefix="/qrcode") */ class QrCodeController { /** * @RequestMapping(path="/generate", methods="get") */ public function generate(ResponseInterface $response) { $qrCode = new QRCode('https://baitexiaoyuan.oss-cn-zhangjiakou.aliyuncs.com/php/ywf351yezhw.com'); return $response->withAddedHeader('Content-Type', QrCodeResponse::class)->withBody(new SwooleStream($qrCode->writeString())); } }
登录后复造
3、铺排路由
正在config/routes.php外加添界说的路由疑息。
<必修php declare(strict_types=1); use HyperfHttpServerRouterRouter; Router::get('/qrcode/generate', 'AppControllerQrCodeController@generate');
登录后复造
4、测试天生2维码
封动Hyperf框架,并拜访http://localhost:9501/qrcode/generate,便可天生一个包罗https://www.example.com链接的两维码。
总结:
原文先容了若何利用Hyperf框架入止两维码天生。经由过程安拆依赖包,建立节制器以及装置路由,咱们否以沉紧天正在Hyperf框架外天生两维码。心愿能对于巨匠有所帮忙。
以上即是假设运用Hyperf框架入止2维码天生的具体形式,更多请存眷萤水红IT仄台另外相闭文章!
发表评论 取消回复