---
title: "The $TCA_DESCR Array"
manual: "TYPO3 Explained"
version: "11.5"
permalink: "https://docs.typo3.org/permalink/t3coreapi:csh-tca-descr@11.5"
source: "ApiOverview/ContextSensitiveHelp/TcaDescr/Index.rst"
rendered: "2026-10-21T15:30:00+00:00"
---

> [!WARNING]
> **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](https://typo3.com/services/extended-support-elts).

# The $TCA_DESCR Array {#csh-tca-descr}

The global array `$TCA_DESCR` is reserved to contain CSH labels. CSH
labels are loaded as they are needed. Thus the class rendering the
form will make an API call to the global language object to have the
CSH labels loaded - if any - for the relevant table.

Basically, the `$TCA_DESCR` array contains references to the
registered language files. As it gets used, it is filled with the
actual labels. This task is performed by method
`\TYPO3\CMS\Core\Localization\LanguageService::loadSingleTableDescription()`.

The content of the `$TCA_DESCR` array can be reviewed in the
**System** \> **Configuration** module:

![Content of the $TCA\\\_DESCR array](../../../Images/ManualScreenshots/ContextSensitiveHelp/ContextSensitiveHelpTcaDescr.png)

As can be seen, several files can be registered for the same table.
This makes it possible to:

-   override existing CSH labels (e.g. for providing more dedicated help)
-   extending existing labels
-   add CSH labels for fields added by the extension

## Keys in $TCA_DESCR {#csh-tca-descr-keys}

Each file is registered with `$TCA_DESCR` using a key. For a
database table, this is simple the table name. For backend modules you
can use the following syntax:

```text
_MOD_[main module]_[module name]
```

For the **Web** \> **Info** module, the key is:

```text
_MOD_web_info
```

The loaded labels will be available in `$TCA_DESCR[(key)]['columns']`.
