I have a variable in which a string is stored, which is supplied via an insert tag of the CMS Contao.
category = "{{page::title}}";
The value of the string is at this point "Fitness" with a big "F". I would like to have this string completely in lowercase letters.
I have already tried the following:
// 1
$category = "{{page::title}}";
echo strtolower($category);
// 2
$category = "{{page::title}}";
echo mb_strtolower($category);
// 3
$category = "{{page::title}}";
echo mb_strtolower($category, 'UTF-8');
But none of these approaches work and I still get "Fitness" with a big "F".
What am I doing wrong?
Insert Tags are replaced by Contao before the result is sent to the browser. You are trying to strtolower
just the insert tag (which does nothing of course) - not the content it will be replaced by.
For your example you can use:
global $objPage;
echo strtolower($objPage->pageTitle ?: $objPage->title);
or
echo strtolower($GLOBALS['objPage']->pageTitle ?: $GLOBALS['objPage']->title);
or
echo strtolower(\Contao\Controller::replaceInsertTags('{{page::title}}'));