Everything you need to know üabout the environment of the application. From language ID of the user, the baseUrl to what extensions are at the start.

Overview of Methods

\nn\t3::Environment()->extLoaded($extName = '');

Check if extension is loaded


\nn\t3::Environment()->extPath($extName = '');

get absolute path to an extension. e.g. /var/www/website/ext/nnsite/

@return string

\nn\t3::Environment()->extRelPath($extName = '');

get relative path (from current script) to an extension. e.g. ../typo3conf/ext/nnsite/

@return string


Returns the baseUrl (config.baseURL), including http(s) protocol e.g. https://www.webseite.de/

@return string

\nn\t3::Environment()->getCookieDomain($loginType = 'FE');

Get the cookie domain e.g. www.webseite.de

@return string

\nn\t3::Environment()->getCountries($lang = 'de', $key = 'cn_iso_2');

Get all available countries in the system

@return array

\nn\t3::Environment()->getCountryByIsocode($cn_iso_2 = NULL, $field = 'cn_iso_2');

Get a country from the static_countries table. by its country code (e.g. DE)

\nn\t3::Environment()->getCountryByIsocode( 'DE' );
\nn\t3::Environment()->getCountryByIsocode( 'DEU', 'cn_iso_3' );
@return array


Get the domain e.g. www.webseite.de

@return string

\nn\t3::Environment()->getExtConf($ext = 'nnhelpers', $param = '');

Get configuration from ext_conf_template.txt (backend, extension configuration)

\nn\t3::Environment()->getExtConf('nnhelpers', 'varname');

Also acts as a ViewHelper:

{nnt3:ts.extConf(path:'nnhelper', key:'varname')}
@return mixed


Get the current language (as a number) of the frontend.

@return int


Get the current language (as an abbreviation like “de”) in the frontend

@return string

\nn\t3::Environment()->getLocalConf($path = '');

Get configuration from LocalConfiguration.php

@return string


Get absolute path to Typo3 root directory. e.g. /var/www/website/


früher: PATH_site


Return maximum upload size for files from the frontend. This specification is the value set in php.ini and if necessary. üvia the .htaccess überschrieben.

\nn\t3::Environment()->getPostMaxSize(); // e.g. '1048576' at 1MB
@return integer


Get relative path to Typo3 root directory. e.g. ../

@return string

\nn\t3::Environment()->getSite($request = NULL);

Get the current site object. This object can be used to access the configuration from the site YAML file, e.g. as of TYPO3 9.

In the context of a MiddleWare, the site may not yet be parsed / loaded. In this case, the $request can be passed from the MiddleWare üto determine the site.

See also \nn\t3::Settings()->getSiteConfig() to read the site configuration.

\nn\t3::Environment()->getSite( $request );

@return \TYPO3\CMS\Core\Site\Entity\Site


Get the absolute path to the /var directory of Typo3.

This directory stores temporäre cache files. Depending on the version of Typo3 and the type of installation (composer or non-composer mode) this directory can be found in different locations.

// /full/path/to/typo3temp/var/
$path = \nn\t3::Environment()->getVarPath();


Check if we are in the backend context

@return bool


Check if we are in the frontend context

@return bool


Check if installation is running on local server

@return boolean


Get the version of Typo3, as an integer, e.g. “8”. Alias to \nn\t3::t3Version()


if (\nn\t3::t3Version() >= 8) {
    // only for >= Typo3 8 LTS
@return int