5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Laravel 6へのcomposer update時にundefined functionエラーが出るときは

Posted at

Laravel 6へのcomposer update時に以下のようなエラーが出ることがあります。

> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi

In cache.php line 91:
                                         
  Call to undefined function str_slug()

これは6からヘルパー関数がフレームワークから削除されたため、設定ファイルでエラーが発生しています。
https://readouble.com/laravel/6.x/ja/upgrade.html?#helpers

以下のように修正することで対応できます。

config/cache.php
<?php

use Illuminate\Support\Str; // 追加

return [
...
    'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_cache'), // Strメソッドに変更

他の設定ファイルでも同様のエラーが起きたら同じように修正します。
もしくは、アップグレードガイドに記載があるようにヘルパー関数用のパッケージを追加します。

composer require laravel/helpers

一気に6系へとアップグレードする場合は、色々と設定ファイルに変更が入っているので設定ファイルはすべてLaravel最新のもので上書きしてしまって、カスタマイズ箇所だけ元に戻すのが間違いないと思います。

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?