ラボ > FuelPHP:auth関連、独自クラスやCoreクラスの継承

FuelPHPのAUTHをカスタマイズ

FuelPHPのAUTHで使っている「Simpleauth」を元にゴニョゴニョしたい。

作成日:2017-11-15, 更新日:2019-03-19

基本

既存の「Simpleauth」を継承して新規作成して利用する。

以下は、私にとってわかりやすいやり方。

条件

・「Simpleauth」を継承して「Myauth」を作る。

処理

ファイルのコピペ

「Simpleauth」を元に「Myauth」を作る

コピー元は「packages\auth\classe」の中(FuelPHPのバージョンによっては「packages\auth\classe\auth」かもしれない)
コピー先は「app\classes」に「auth」を作り、その中。

コピー元ファイル名 コピー先ファイル名
packages\auth\classe\acl\simpleacl.php → app\classes\auth\acl\myacl.php
packages\auth\classe\group\simplegroup.php → app\classes\auth\group\mygroup.php
packages\auth\classe\login\simpleauth.php → app\classes\auth\login\myauth.php

ファイルの修正

クラス名と継承元のトコを書き換えて、中身の関数等はコメント。
・・・クラス名のトコ以外は全部削除でも大丈夫だと思う。

app\classes\auth\acl\myacl.php
class Auth_Acl_Myacl extends \Auth_Acl_Simpleacl{}
app\classes\auth\group\mygroup.php
class Auth_Group_Mygroup extends \Auth_Group_Simplegroup{}
app\classes\auth\login\myauth.php
class Auth_Login_Myauth extends \Auth_Login_Simpleauth{}

※「\Auth::〇〇〇()」は基本、この中の関数だと思う。

→「namespace」の行はコメントしないといけないかもしれない。

ドライバの書き換え

▼app\config\auth.php

'driver' => 'Simpleauth',

上記を下記に書き換える

//'driver' => 'Simpleauth',
'driver' => 'Myauth',

※コメントせずに削除でもいい。