当前位置: 首页 > 文档资料 > FuelPHP 中文文档 >

Group - 驅动类型 - Auth 套件

优质
小牛编辑
133浏览
2023-12-01

Auth 套件在 Fuel 里提供一个标准化的认证介面。 这使得我们的使用者能编写自己的驱动程序,并且轻鬆地将新的驱动程序与旧的程式码整合, 以保持基本方法一致。

Auth_Group_Driver

此驱动是所有 Auth 群组驱动的基础类别。它被定义为一个抽象类别, 该类别包含了通用于所有群组驱动的所有方法, 以及定义给任何群组驱动必须实现的所有抽象方法。

驱动配置

一个群组驱动可以载入它所依赖的额外驱动。一般情况下,这些是 ACL 驱动。 但你的实现情况可以是引进和使用自订的驱动类型。要做到这一点,添加此结构到你的驱动类别:

// 当载入此群组驱动时自动载入 Simpleacl acl 驱动
	protected $config = array(
		'drivers' => array('acl' => array('Simpleacl'))
	);

静态介面

为了易于使用,member() 方法透过通用 Auth 静态介面曝光。

使用静态介面,你能做到

// 回传 true 如果目前使用者是群组 16 的成员。
$is_member = Auth::member(16);

通用方法

通用方法被定义在群组基础驱动,而且能透过扩充到达所有的 Auth 群组驱动。这些方法提供功能来与群组互动,并检查存取。

定义在类别中而没记录在此的方法是内部使用,而且不应该直接被呼叫。

get_id()

回传驱动的唯一 ID。这可被用于识别驱动,或用来选择一个特定的驱动实例。

静态
参数
回传驱动 ID 字串。
範例
// 回传 'simpleauth'
$id = Auth::group()->get_id();

set_config($key, $value)

设定一个驱动配置值。

静态
参数
参数预设描述
$key必要配置键名
$value必要此配置键的值
回传
範例
// 在 simplegroup 驱动设定一个配置值
Auth::group()->set_config('key', 'value');

get_config($key, $default = null)

取得一个驱动配置值。

静态
参数
参数预设描述
$key必要配置键名
$defaultnull如果请求的键不存在时要回传的预设值
回传混合
範例
// 取得一个 simplegroup 驱动的配置值,如果不存在回传 false
$key = Auth::instance(simplegroup)->get_config('key', false);

抽象方法

你所开发的每个群组驱动必须提供这些所有的方法,且必须回传此处记录的值。

member($group, $specific = null)

检查是否使用者是所给群组中的成员,无论是所有载入的群组驱动, 或只是指定为第二参数的那些。

静态
参数
参数预设描述
$group必要群组 ID
$specificnullnull 以检查所有,或一个或更多驱动 ID(单一字串或字串阵列)
回传布林,是否(所给)的驱动之一将目前使用者注册为一个成员
範例
if ( ! Auth::member(100) )
{
	Response::redirect('no_admin');
}

// 指定驱动
Auth::member(1, 'simplegroup');

// 多个驱动
Auth::member(0, array('simplegroup', 'genericgroup'));

get_name($group)

取得所给群组名称的显示名称。

静态
参数
参数预设描述
$groupnull你想要取得显示名称的群组名称
回传混合,取回的群组显示名称,或 false 如果所给群组不存在。
範例
// 取得 admin 群组的显示名称
Auth::instance('simplegroup')->get_name('admin');