function MenuTreeParameters::__serialize

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Menu/MenuTreeParameters.php \Drupal\Core\Menu\MenuTreeParameters::__serialize()
  2. 11.x core/lib/Drupal/Core/Menu/MenuTreeParameters.php \Drupal\Core\Menu\MenuTreeParameters::__serialize()
1 call to MenuTreeParameters::__serialize()
MenuTreeParameters::serialize in core/lib/Drupal/Core/Menu/MenuTreeParameters.php

File

core/lib/Drupal/Core/Menu/MenuTreeParameters.php, line 229

Class

MenuTreeParameters
Provides a value object to model menu tree parameters.

Namespace

Drupal\Core\Menu

Code

public function __serialize() : array {
  // Enforce type consistency for all the internal properties of this object.
  $this->root = (string) $this->root;
  $this->minDepth = $this->minDepth !== NULL ? (int) $this->minDepth : NULL;
  $this->maxDepth = $this->maxDepth !== NULL ? (int) $this->maxDepth : NULL;
  $this->activeTrail = array_values(array_filter($this->activeTrail));
  // Sort 'expanded' and 'conditions' to prevent duplicate cache items.
  sort($this->expandedParents);
  asort($this->conditions);
  return [
    'root' => $this->root,
    'minDepth' => $this->minDepth,
    'maxDepth' => $this->maxDepth,
    'expandedParents' => $this->expandedParents,
    'activeTrail' => $this->activeTrail,
    'conditions' => $this->conditions,
  ];
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.