Laravel クラスの追加と共通関数の使い方

Laravelに開発者が定義する共通関数で構成されるクラスを追加する

新しいclassを追加

Laravelで共通関数を定義して利用する方法です。

新しくclassを追加して、そのclassに共通関数をコーディングしていきます。

app/lib/Common.php

を作成して、このファイルにオリジナルの関数を追加していきます。

namespace app\lib;

class Common {
  public static function random_slug($num = 6) {
    $parts = 'abcefghijklmnopqrstuvwxyz1234567890';
    return substr(str_shuffle($parts), 0, $num);
  }
}

Commonクラスを定義し、その中に共通関数を追加していきます。上のコードでは、

random_slug()

というオリジナルの関数を定義しました。

composerでclassmapを追加

composer.jsonでclassmapに

app/lib

を追加します。

"autoload": {
	"classmap": [
		"app/commands",
		"app/controllers",
		"app/models",
		"app/database/migrations",
		"app/database/seeds",
		"app/tests/TestCase.php",
		"app/lib"
	]
},

追加したら、

composer dump-autoload

を実行します。

app.phpでClass Aliasesを追加

Commonクラスがロード可能な状態になったので、プロジェクト側でロードします。

app/config/app.php

で定義されている

Class Aliases

の配列内に一行追加します。

'Common' => 'app\lib\Common',

ここまでの作業でCommonクラスが利用可能な状態になりました。

共通関数の利用

共通関数を使う際には、ControllerやViewで

クラス名::関数名

の書式でコールします。

var_dump(Common::random_slug(6));

今回の場合は、上のように書くことでrandom_slug()を使うことが可能で、アプリケーションの任意の場所で6文字のランダムな文字列を生成することが出来るようになります。

Webエンジニアブログにコメント

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Laravel クラスの追加と共通関数の使い方の記事にコメントを投稿