62 public function evaluate(\
TYPO3\CMS\
Fluid\Core\Rendering\RenderingContextInterface $renderingContext) {
63 return self::getPropertyPath($renderingContext->getTemplateVariableContainer(),
$this->objectPath, $renderingContext);
79 static public function getPropertyPath($subject, $propertyPath, \
TYPO3\CMS\
Fluid\Core\Rendering\RenderingContextInterface $renderingContext) {
80 $propertyPathSegments = explode(
'.', $propertyPath);
81 foreach ($propertyPathSegments as $pathSegment) {
82 $propertyExists = FALSE;
84 if ($propertyExists !== TRUE && (is_array($subject) || $subject instanceof \ArrayAccess) && isset($subject[$pathSegment])) {
85 $subject = $subject[$pathSegment];
87 $subject = $propertyValue;
91 $subject->setRenderingContext($renderingContext);
static getPropertyInternal($subject, $propertyName, $forceDirectAccess, &$propertyExists)
static getPropertyPath($subject, $propertyPath, \TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface $renderingContext)
evaluate(\TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface $renderingContext)