function Drupal::classResolver
Same name in other branches
- 8.9.x core/lib/Drupal.php \Drupal::classResolver()
- 10 core/lib/Drupal.php \Drupal::classResolver()
- 11.x core/lib/Drupal.php \Drupal::classResolver()
Retrieves the class resolver.
This is to be used in procedural code such as module files to instantiate an object of a class that implements \Drupal\Core\DependencyInjection\ContainerInjectionInterface.
One common usecase is to provide a class which contains the actual code of a hook implementation, without having to create a service.
Parameters
string $class: (optional) A class name to instantiate.
Return value
\Drupal\Core\DependencyInjection\ClassResolverInterface|object The class resolver or if $class is provided, a class instance with a given class definition.
Throws
\InvalidArgumentException If $class does not exist.
20 calls to Drupal::classResolver()
- ckeditor5_post_update_alignment_buttons in core/
modules/ ckeditor5/ ckeditor5.post_update.php - Updates text formats that has alignment shown as individual buttons.
- ckeditor5_post_update_image_toolbar_item in core/
modules/ ckeditor5/ ckeditor5.post_update.php - The image toolbar item changed from `uploadImage` to `drupalInsertImage`.
- ckeditor_post_update_omit_settings_for_disabled_plugins in core/
modules/ ckeditor/ ckeditor.post_update.php - Updates Text Editors using CKEditor 4 to omit settings for disabled plugins.
- DrupalTest::testClassResolver in core/
tests/ Drupal/ Tests/ Core/ DrupalTest.php - Tests the classResolver method.
- DrupalTest::testClassResolverWithClass in core/
tests/ Drupal/ Tests/ Core/ DrupalTest.php - Tests the classResolver method when called with a class.
File
-
core/
lib/ Drupal.php, line 372
Class
- Drupal
- Static Service Container wrapper.
Code
public static function classResolver($class = NULL) {
if ($class) {
return static::getContainer()->get('class_resolver')
->getInstanceFromDefinition($class);
}
return static::getContainer()->get('class_resolver');
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.