hyperf 使用视图功能

5 篇文章 0 订阅

今天试试hyperf的视图功能

首先看文档,需要安装hyperf/view组件,composer require hyperf/view.报了个错,说是其他组件版本太低无法安装,因为我自己下的是hyperf2.0的版本,目前已经是2.1的版本,那么安装官方文档的说明更新一下。https://hyperf.wiki/2.1/#/zh-cn/upgrade/2.1?id=%e4%bf%ae%e6%94%b9-hyperf-%e7%bb%84%e4%bb%b6%e7%89%88%e6%9c%ac

升级版本很简单,直接将 composer.json 中的 hyperf/* 统一修改为 2.1.* 即可。

修改完之后执行 composer update -o,升级到2.1成功

然后重新composer require hyperf/view ,ok安装成功,接下来是配置,还是按文档操作。php bin/hyperf.php vendor:publish hyperf/view

好的,在config/autoload 下面就生成了view.php

打开之后进行配置

<?php

declare(strict_types=1);
/**
 * This file is part of Hyperf.
 *
 * @link     https://www.hyperf.io
 * @document https://doc.hyperf.io
 * @contact  group@hyperf.io
 * @license  https://github.com/hyperf/hyperf/blob/master/LICENSE
 */


return [
    'engine' => Hyperf\ViewEngine\HyperfViewEngine::class,
    'mode' => Hyperf\View\Mode::SYNC,
    'config' => [
        'view_path' => BASE_PATH . '/storage/view/',
        'cache_path' => BASE_PATH . '/runtime/view/',
    ],
];

配置好了,这里的话由于引擎需要自己安装所以,配置之前还得安装相应组件 composer require hyperf/view-engine

配置完成之后就是开始使用了,首先按照配置里面的目录创建文件夹 ,我在storage/view/index 目录下新建了一个test.blade.php

内容如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Hyperf</title>
</head>
<body>
@foreach($data as $v)
    {{$v}}
@endforeach
</body>
</html>

 

然后在IndexController,里面通过$render 函数渲染页面并返回,注意这里一定要先在index()里面注入 RenderInterface $render

    public function index(RenderInterface $render)
    {
//        var_dump($this->calculatorService->add(1,2));
        $user = $this->request->input('user', 'Hyperf');
        $method = $this->request->getMethod();
        $arr = ["哈哈","嘿嘿","嚯嚯"];
        return $render->render('index.test', ['data' => $arr]);
    }

好,然后在route里面配置路由

Router::addRoute(['GET', 'POST', 'HEAD'], '/', 'App\Controller\IndexController@index');

启动hyperf就行了

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值