PHP code example of nyoncode / laravel-permission-extended
1. Go to this page and download the library: Download nyoncode/laravel-permission-extended library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
nyoncode / laravel-permission-extended example snippets
// Wildcards just work in every Spatie method
$user->hasPermissionTo('admin.*');
$user->hasRoleOrPermission('editor|admin.*');
// Super-admin bypasses everything via Gate
@can('anything') YES @endcan
// Spatie middleware registered automatically
Route::middleware('permission:admin.*')
// Before: use Spatie\Permission\Traits\HasRoles;
// After:
use NyonCode\PermissionExtended\Traits\HasRoles;
class User extends Authenticatable
{
use HasRoles;
}
$user->hasPermissionTo('admin.*'); // any admin permission
$user->hasAnyPermission(['admin.*', 'posts.edit']); // any match
$user->hasAllPermissions(['admin.*', 'posts.*']); // all must match
$user->hasRoleOrPermission('editor|admin.*'); // role OR permission
'super_admin_role' => 'super-admin', // or null to disable
$user->assignGlobalRole('super-admin');
// These just work out of the box:
Route::middleware('role:admin')
Route::middleware('permission:admin.*')
Route::middleware('role_or_permission:editor|admin.*')
use NyonCode\PermissionExtended\Livewire\WithPermissions;
class AdminPanel extends Component
{
use WithPermissions;
public function mount()
{
$this->permAuthorize('admin.*');
}
}
bash
php artisan permission:flush
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.