After upgrading Laravel from 5.6 to 6.0, Call to undefined str_random() function not working

I have upgraded Laravel from 5.6 to 6.0. Previously, default helper functions were running fine on the controllers, but now it says "undefined." In my controller, I have used the following.

$filename = str_random(12);

I am getting the following error.

message: "Call to undefined function App\Http\Controllers\str_random()"

I have also used the function, and it's saying the same thing.random()

Can somebody please guide me on what to do?.

I have run commands like:

composer dump-autoload

But I get the same error.


答案 1

Likelihood Of Impact: High Laravel 6 Upgrade Guide

In Laravel 6 All and helpers have been moved to the new Composer package and removed from the framework. If desired, you may update all calls to these helpers to use the and classes. Alternatively, you can add the new package to your application to continue using these helpers:str_array_laravel/helpersIlluminate\Support\StrIlluminate\Support\Arrlaravel/helpers

composer require laravel/helpers

If don't want to add Package then Used And Classes.StrArr

For Example :

Str::random(12)

https://laravel.com/docs/master/helpers#method-str-random


答案 2

Add the following string library.

use Illuminate\Support\Str;

now you can use it as below.

$filename = Str::random(40)

alternatively, install the following package.

composer require laravel/helpers

推荐