You are here

Classes, traits, and interfaces in Drupal 8

Primary tabs

Introduction to classes

A lot of the PHP code in Drupal is object oriented (OO), making use of PHP classes, interfaces, and traits. See the Objected-oriented programming conventions for more information.

See also

Objected-oriented programming conventions

Namesort descending Type Namespace Location Description Direct uses Use statements Strings
AbstractOperation abstract class Drupal\Composer\Plugin\Scaffold\Operations composer/Plugin/Scaffold/Operations/AbstractOperation.php Provides default behaviors for operations. 3
AcceptHeaderMatcher class Drupal\accept_header_routing_test\Routing core/modules/system/tests/modules/accept_header_routing_test/src/Routing/AcceptHeaderMatcher.php Filters routes based on the media type specified in the HTTP Accept headers. 1 2
AcceptHeaderMatcherTest class Drupal\Tests\Core\Routing core/tests/Drupal/Tests/Core/Routing/AcceptHeaderMatcherTest.php Confirm that the mime types partial matcher is functioning properly.
AcceptHeaderMiddleware class Drupal\accept_header_routing_test core/modules/system/tests/modules/accept_header_routing_test/src/AcceptHeaderMiddleware.php Example implementation of "accept header"-based content negotiation.
AcceptHeaderRoutingTestServiceProvider class Drupal\accept_header_routing_test core/modules/system/tests/modules/accept_header_routing_test/src/AcceptHeaderRoutingTestServiceProvider.php Service provider for the accept_header_routing_test module.
Access class Drupal\node\Plugin\views\filter core/modules/node/src/Plugin/views/filter/Access.php Filter by node_access records.
AccessArgumentsResolverFactory class Drupal\Core\Access core/lib/Drupal/Core/Access/AccessArgumentsResolverFactory.php Resolves the arguments to pass to an access check callable. 2
AccessArgumentsResolverFactoryInterface interface Drupal\Core\Access core/lib/Drupal/Core/Access/AccessArgumentsResolverFactoryInterface.php Constructs the arguments resolver instance to use when running access checks. 1
AccessAwareRouter class Drupal\Core\Routing core/lib/Drupal/Core/Routing/AccessAwareRouter.php A router class for Drupal with access check and upcasting. 1 2
AccessAwareRouterInterface interface Drupal\Core\Routing core/lib/Drupal/Core/Routing/AccessAwareRouterInterface.php Interface for a router class for Drupal with access check and upcasting. 1 6
AccessAwareRouterTest class Drupal\Tests\Core\Routing core/tests/Drupal/Tests/Core/Routing/AccessAwareRouterTest.php @coversDefaultClass \Drupal\Core\Routing\AccessAwareRouter @group Routing
AccessCheck class Drupal\menu_test\Access core/modules/system/tests/modules/menu_test/src/Access/AccessCheck.php Checks access based on the 'menu_test' key in session. 2
AccessCheckInterface interface Drupal\Core\Access core/lib/Drupal/Core/Access/AccessCheckInterface.php An access check service determines access rules for particular routes. 2 1
AccessDeniedSubscriber class Drupal\user\EventSubscriber core/modules/user/src/EventSubscriber/AccessDeniedSubscriber.php Redirects users when access is denied. 2
AccessDeniedTest class Drupal\Tests\system\Functional\System core/modules/system/tests/src/Functional/System/AccessDeniedTest.php Tests page access denied functionality, including custom 403 pages.
AccessException class Drupal\Core\Access core/lib/Drupal/Core/Access/AccessException.php An exception thrown for access errors. 1 3
AccessGroupAnd class Drupal\block_content\Access core/modules/block_content/src/Access/AccessGroupAnd.php An access group where all the dependencies must be allowed. 2
AccessGroupAndTest class Drupal\Tests\block_content\Unit\Access core/modules/block_content/tests/src/Unit/Access/AccessGroupAndTest.php Tests accessible groups.
AccessibleInterface interface Drupal\Core\Access core/lib/Drupal/Core/Access/AccessibleInterface.php Interface for checking access. 8 17
AccessibleTestingTrait trait Drupal\Tests\block_content\Unit\Access core/modules/block_content/tests/src/Unit/Access/AccessibleTestingTrait.php Helper methods testing accessible interfaces.
AccessInterface interface Drupal\Core\Routing\Access core/lib/Drupal/Core/Routing/Access/AccessInterface.php An access check service determines access rules for particular routes. 41 42
AccessManager class Drupal\Core\Access core/lib/Drupal/Core/Access/AccessManager.php Attaches access check services to routes and runs them on request. 1 2
AccessManagerInterface interface Drupal\Core\Access core/lib/Drupal/Core/Access/AccessManagerInterface.php Provides an interface for attaching and running access check services. 1 16
AccessManagerTest class Drupal\Tests\Core\Access core/tests/Drupal/Tests/Core/Access/AccessManagerTest.php @coversDefaultClass \Drupal\Core\Access\AccessManager @group Access
AccessPermissionTest class Drupal\Tests\user\Kernel\Views core/modules/user/tests/src/Kernel/Views/AccessPermissionTest.php Tests views perm access plugin.
AccessPluginBase abstract class Drupal\views\Plugin\views\access core/modules/views/src/Plugin/views/access/AccessPluginBase.php The base plugin to handle access control. 5 5
AccessResult abstract class Drupal\Core\Access core/lib/Drupal/Core/Access/AccessResult.php Value object for passing an access result with cacheability metadata. 3 204
AccessResultAllowed class Drupal\Core\Access core/lib/Drupal/Core/Access/AccessResultAllowed.php Value object indicating an allowed access result, with cacheability metadata. 4
AccessResultForbidden class Drupal\Core\Access core/lib/Drupal/Core/Access/AccessResultForbidden.php Value object indicating a forbidden access result, with cacheability metadata. 4
AccessResultForbiddenTest class Drupal\Tests\Core\Access core/tests/Drupal/Tests/Core/Access/AccessResultForbiddenTest.php @coversDefaultClass \Drupal\Core\Access\AccessResultForbidden @group Access
AccessResultInterface interface Drupal\Core\Access core/lib/Drupal/Core/Access/AccessResultInterface.php Interface for access result value objects. 3 13
AccessResultNeutral class Drupal\Core\Access core/lib/Drupal/Core/Access/AccessResultNeutral.php Value object indicating a neutral access result, with cacheability metadata. 6
AccessResultNeutralTest class Drupal\Tests\Core\Access core/tests/Drupal/Tests/Core/Access/AccessResultNeutralTest.php @coversDefaultClass \Drupal\Core\Access\AccessResultNeutral @group Access
AccessResultReasonInterface interface Drupal\Core\Access core/lib/Drupal/Core/Access/AccessResultReasonInterface.php Interface for access result value objects with stored reason for developers. 2 14
AccessResultTest class Drupal\Tests\Core\Access core/tests/Drupal/Tests/Core/Access/AccessResultTest.php @coversDefaultClass \Drupal\Core\Access\AccessResult @group Access
AccessRoleTest class Drupal\Tests\user\Functional\Views core/modules/user/tests/src/Functional/Views/AccessRoleTest.php Tests views role access plugin.
AccessRoleUITest class Drupal\Tests\user\Functional core/modules/user/tests/src/Functional/AccessRoleUITest.php Tests views role access plugin UI.
AccessTest class Drupal\Tests\file\Kernel core/modules/file/tests/src/Kernel/AccessTest.php Tests for the File access control.
AccessTest class Drupal\Tests\views\Functional\Plugin core/modules/views/tests/src/Functional/Plugin/AccessTest.php Tests pluggable access for views.
AccessTestBase abstract class Drupal\Tests\user\Functional\Views core/modules/user/tests/src/Functional/Views/AccessTestBase.php A common test base class for the user access plugin tests. 1
AccountEvents final class Drupal\Core\Session core/lib/Drupal/Core/Session/AccountEvents.php Defines events for the account system. 1
AccountForm abstract class Drupal\user core/modules/user/src/AccountForm.php Form controller for the user account forms. 2
AccountInterface interface Drupal\Core\Session core/lib/Drupal/Core/Session/AccountInterface.php Defines an account interface which represents the current user. 3 367
AccountPermissionsCacheContext class Drupal\Core\Cache\Context core/lib/Drupal/Core/Cache/Context/AccountPermissionsCacheContext.php Defines the AccountPermissionsCacheContext service, for "per permission" caching. 2
AccountProxy class Drupal\Core\Session core/lib/Drupal/Core/Session/AccountProxy.php A proxied implementation of AccountInterface. 1 2
AccountProxyInterface interface Drupal\Core\Session core/lib/Drupal/Core/Session/AccountProxyInterface.php Defines an interface for a service which has the current account stored. 1 8
AccountProxyTest class Drupal\Tests\Core\Session core/tests/Drupal/Tests/Core/Session/AccountProxyTest.php @coversDefaultClass \Drupal\Core\Session\AccountProxy @group Session
AccountSetEvent final class Drupal\Core\Session core/lib/Drupal/Core/Session/AccountSetEvent.php Event fired when an account is set for the current session.
AccountSettingsForm class Drupal\user core/modules/user/src/AccountSettingsForm.php Configure user settings for this site. 2 1
AccountSwitcher class Drupal\Core\Session core/lib/Drupal/Core/Session/AccountSwitcher.php An implementation of AccountSwitcherInterface. 2

Pages

Other projects