Attention
TYPO3 v11 has reached end-of-life as of October 31th 2024 and is no longer being maintained. Use the version switcher on the top left of this page to select documentation for a supported version of TYPO3.
Need more time before upgrading? You can purchase Extended Long Term Support (ELTS) for TYPO3 v11 here: TYPO3 ELTS.
Services API
Deprecated since version 11.3
The abstract class \TYPO3\
has been
deprecated. See Migration.
This section describes the methods of the TYPO3 Core that are related to the use of services.
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility
This extension management class contains three methods related to services:
- addService
- This method is used to register services with TYPO3. It checks for
availability of a service with regards to OS dependency (if any) and
fills the
$GLOBALS
array, where information about all registered services is kept.['T3_ SERVICES'] - findService
-
This method is used to find the appropriate service given a type and a subtype. It handles priority and quality rankings. It also checks for availability based on executables dependencies, if any.
This method is normally called by
\TYPO3\
, so you shouldn't have to worry about calling it directly, but it can be useful to check if there's at least one service available.CMS\ Core\ Utility\ General Utility:: make Instance Service () - deactivateService
- Marks a service as unavailable. It is called internally by
add
andService () find
and should probably not be called directly unless you're sure of what you're doing.Service ()
\TYPO3\CMS\Core\Utility\GeneralUtility
This class contains a single method related to services, but the most useful one, used to get an instance of a service.
- makeInstanceService
-
This method is used to get an instance of a service class of a given type and subtype. It calls on
\TYPO3\
to find the best possible service (in terms of priority and quality).CMS\ Core\ Utility\ Extension Management Utility:: find Service () As described above it keeps a registry of all instantiated service classes and uses existing instances whenever possible, in effect turning service classes into singletons.