Laravel5.5で共通クラス、共通関数、汎用関数を作る
独自にクラスを作って使う方法を探していて簡単に実装できそうな方法を見つけたのでメモ。
共通クラス、共通関数、汎用関数を作成
まずはクラスを作成します。
共通クラスはどこに作っても大丈夫なようですが今回は
app/libs
の中に作ることにしました。
はじめ app/lib としてsを付けずにディレクトリを作って
php composer.phar dump-autoload
を実行したのですが
vendor/composer/autoload_classmap.php
内に生成されたディレクトリへのパスがなぜかlibsとなってしまいlibにならないのでlibsとしました。
<?php
namespace app\Libs;
class Common
{
public static function h($s) {
return htmlspecialchars($s, ENT_QUOTES, 'UTF-8');
}
}
composer.jsonに追加app/Libsを追加
"autoload": {
"classmap": [
"database/seeds",
"database/factories",
"app/Libs"
],
config/app.phpにエイリアスとして追加
'Common' => 'app\Libs\Common', // 追加
dump-autolodを実行
使う時は
use App\Libs\Common;
として
$string = 'ハロー';
$string = Common::h($string);
とか
$common = new Common();
$string = $common->h($string);
とかで使う