# :-: 編寫Helper
## 編寫助手函數
```php
use think\permissions\facade\Permissions;
use think\permissions\facade\Roles;
/**
* 是否有權限
*
* @time at 2018年09月29日
* @param $permission => controller@action
* @return bool
*/
if (!function_exists('can')) {
function can($permission)
{
$module = request()->module();
list($controller, $action) = explode('@', $permission);
// 這里就需要獲取登錄用戶信息,來進行權限判斷
$user = request()->session('config.permission.user');
$roleIDs = $user->getRoles(false);
$permission = Permissions::getPermissionByModuleAnd($module, $controller, $action);
$permissions = [];
foreach ($roleIDs as $role) {
$permissions = array_merge($permissions, (Roles::getPermissions($role, false)));
}
if (!in_array($permission->id, $permissions)) {
return false;
}
return true;
}
}
```
## composer 自動加載
利用 composer.json 的 files 就可以自動加載了 助手函數了, 無需手動 require
```
// 測試用的
"autoload": {
"files": [
"vendor/thinkphp-permission/src/helper.php"
]
},
// 實際composer 包內
"autoload": {
"files": [
"src/helper.php"
]
},
```