Skip to content

Utilities ​

Type
Class
Namespace
craft\services
Inherits
craft\services\Utilities » yii\base\Component » yii\base\BaseObject
Implements
yii\base\Configurable
Since
3.0.0

The Utilities service provides APIs for managing utilities.

An instance of the service is available via Craft::$app->utilities().

View source

Public Properties ​

PropertyDescription
allUtilityTypesstring[]
authorizedUtilityTypesstring[]
behaviorsyii\base\Behavior – List of behaviors attached to this component.

allUtilityTypes ​

Type
string[]
Default value
null
Access
Read-only

View source

authorizedUtilityTypes ​

Type
string[]
Default value
null
Access
Read-only

View source

Public Methods ​

MethodDescription
__call()Calls the named method which is not a class method.
__clone()This method is called after the object is created by cloning an existing one.
__construct()Constructor.
__get()Returns the value of a component property.
__isset()Checks if a property is set, i.e. defined and not null.
__set()Sets the value of a component property.
__unset()Sets a component property to be null.
attachBehavior()Attaches a behavior to this component.
attachBehaviors()Attaches a list of behaviors to the component.
behaviors()Returns a list of behaviors that this component should behave as.
canGetProperty()Returns a value indicating whether a property can be read.
canSetProperty()Returns a value indicating whether a property can be set.
checkAuthorization()Returns whether the current user is authorized to use a given utility.
className()Returns the fully qualified name of this class.
detachBehavior()Detaches a behavior from the component.
detachBehaviors()Detaches all behaviors from the component.
ensureBehaviors()Makes sure that the behaviors declared in behaviors() are attached to this component.
getAllUtilityTypes()Returns all available utility type classes.
getAuthorizedUtilityTypes()Returns all utility type classes that the user has permission to use.
getBehavior()Returns the named behavior object.
getBehaviors()Returns all behaviors attached to this component.
getUtilityTypeById()Returns a utility class by its ID
hasEventHandlers()Returns a value indicating whether there is any handler attached to the named event.
hasMethod()Returns a value indicating whether a method is defined.
hasProperty()Returns a value indicating whether a property is defined for this component.
init()Initializes the object.
off()Detaches an existing event handler from this component.
on()Attaches an event handler to an event.
trigger()Triggers an event.

checkAuthorization() ​

Returns whether the current user is authorized to use a given utility.

View source

Arguments ​

  • $class (class-string<\craft\base\UtilityInterface>) – The utility class

Returns ​

boolean

getAllUtilityTypes() ​

Returns all available utility type classes.

View source

Returns ​

string[]

getAuthorizedUtilityTypes() ​

Returns all utility type classes that the user has permission to use.

View source

Returns ​

string[]

getUtilityTypeById() ​

Returns a utility class by its ID

View source

Arguments ​

Returns ​

class-string<\craft\base\UtilityInterface>, null

Events ​

EVENT_REGISTER_UTILITY_TYPES ​

Type
craft\events\RegisterComponentTypesEvent

The event that is triggered when registering utilities.

Utilities must implement craft\base\UtilityInterface. craft\base\Utility provides a base implementation.

Read more about creating utilities in the documentation.


Example ​

php
use craft\events\RegisterComponentTypesEvent;
use craft\services\Utilities;
use yii\base\Event;

Event::on(Utilities::class,
    Utilities::EVENT_REGISTER_UTILITY_TYPES,
    function(RegisterComponentTypesEvent $event) {
        $event->types[] = MyUtilityType::class;
    }
);