Flexform::parse()
\nn\t3::Flexform()->parse($xml = '');
Converts a Flexform XML into an array
\nn\t3::Flexform()->parse('');
Copied!
Also exists as a ViewHelper:
{rawXmlString->nnt3:parse.flexForm()->f:debug()}
Copied!
| @return array
Source Code
public function parse( $xml = '' )
{
$flexFormService = \nn\t3::injectClass( \TYPO3\CMS\Core\Service\FlexFormService::class );
if (!$xml) return [];
if (is_array($xml)) {
$data = [];
foreach (($xml['data']['sDEF']['lDEF'] ?? []) as $k=>$node) {
$data[$k] = $node['vDEF'];
}
return $data;
}
return $flexFormService->convertFlexFormContentToArray( $xml ) ?: [];
}
Copied!