1

我最近将项目中的 Laravel 版本升级到了 6.x。

现在我知道helpers该类已从 Laravel 6.0 版本中删除。

但无论如何,我需要保留 [root-dir]/helpers.php 文件,它是面向函数的、包含通用帮助函数的非类文件。

在该文件中,我需要将所有以str_likestr_contains开头的自定义函数替换Illumimnate\Support\StrStr::contains. 例如:

if(!function_exists('is_bot'))
{
    /**
     * userAgent is the user-agent header
     * from the request object
     * @param $userAgent
     * @return bool
     */
    function is_bot($userAgent)
    {
        return str_contains($userAgent, config('bot_check'));
    }
}

我怎样才能做到这一点 ?

4

2 回答 2

2

您只能在类文件中使用namespace和。use您可以将helpers.php文件转换为这样的类:

<?php

namespace App;

use Illuminate\Support\Str;

class Helper
{
    public static function is_bot($userAgent)
    {
        return Str::contains($userAgent, config('bot_check'));
    }
}

is_bot并在你的 Laravel 应用程序中调用函数\App\Helper::is_bot($userAgent)

于 2020-06-20T05:16:51.817 回答
0

由于有人抱怨他们而删除了助手,但是他们将其移至新包 https://github.com/laravel/helpers

链接到 laravel 的拉取请求 https://github.com/laravel/framework/pull/26898

于 2020-06-20T04:42:05.620 回答