Methods

Adds a Role having an identifier unique to the registry

add(\Zend\Permissions\Acl\Role\RoleInterface $role, \Zend\Permissions\Acl\Role\RoleInterface | string | array | \Traversable $parents) : \Zend\Permissions\Acl\Role\Registry

The $parents parameter may be a reference to, or the string identifier for, a Role existing in the registry, or $parents may be passed as an array of these - mixing string identifiers and objects is ok - to indicate the Roles from which the newly added Role will directly inherit.

In order to resolve potential ambiguities with conflicting rules inherited from different parents, the most recently added parent takes precedence over parents that were previously added. In other words, the first parent added will have the least priority, and the last parent added will have the highest priority.

Parameters

$parents

\Zend\Permissions\Acl\Role\RoleInterfacestringarray\Traversable

Exceptions

\Zend\Permissions\Acl\Exception\InvalidArgumentException

Returns

\Zend\Permissions\Acl\Role\RegistryProvides a fluent interface

Returns the identified Role

get(\Zend\Permissions\Acl\Role\RoleInterface | string $role) : \Zend\Permissions\Acl\Role\RoleInterface

The $role parameter can either be a Role or a Role identifier.

Parameters

Exceptions

\Zend\Permissions\Acl\Exception\InvalidArgumentException

Returns

Returns an array of an existing Role's parents

getParents(\Zend\Permissions\Acl\Role\RoleInterface | string $role) : array

The array keys are the identifiers of the parent Roles, and the values are the parent Role instances. The parent Roles are ordered in this array by ascending priority. The highest priority parent Role, last in the array, corresponds with the parent Role most recently added.

If the Role does not have any parents, then an empty array is returned.

Parameters

Returns

array

Get all roles in the registry

getRoles() : array

Returns

array

Returns true if and only if the Role exists in the registry

has(\Zend\Permissions\Acl\Role\RoleInterface | string $role) : bool

The $role parameter can either be a Role or a Role identifier.

Parameters

Returns

bool

Returns true if and only if $role inherits from $inherit

inherits(\Zend\Permissions\Acl\Role\RoleInterface | string $role, \Zend\Permissions\Acl\Role\RoleInterface | string $inherit, bool $onlyParents) : bool

Both parameters may be either a Role or a Role identifier. If $onlyParents is true, then $role must inherit directly from $inherit in order to return true. By default, this method looks through the entire inheritance DAG to determine whether $role inherits from $inherit through its ancestor Roles.

Parameters

$onlyParents

bool

Exceptions

\Zend\Permissions\Acl\Exception\InvalidArgumentException

Returns

bool

Removes the Role from the registry

remove(\Zend\Permissions\Acl\Role\RoleInterface | string $role) : \Zend\Permissions\Acl\Role\Registry

The $role parameter can either be a Role or a Role identifier.

Parameters

Exceptions

\Zend\Permissions\Acl\Exception\InvalidArgumentException

Returns

\Zend\Permissions\Acl\Role\RegistryProvides a fluent interface

Removes all Roles from the registry

removeAll() : \Zend\Permissions\Acl\Role\Registry

Returns

\Zend\Permissions\Acl\Role\RegistryProvides a fluent interface

 Properties

 

Internal Role registry data storage

$roles : array