function MenuTreeParameters::serialize

Same name in other branches
  1. 9 core/lib/Drupal/Core/Menu/MenuTreeParameters.php \Drupal\Core\Menu\MenuTreeParameters::serialize()
  2. 10 core/lib/Drupal/Core/Menu/MenuTreeParameters.php \Drupal\Core\Menu\MenuTreeParameters::serialize()
  3. 11.x core/lib/Drupal/Core/Menu/MenuTreeParameters.php \Drupal\Core\Menu\MenuTreeParameters::serialize()

File

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

Class

MenuTreeParameters
Provides a value object to model menu tree parameters.

Namespace

Drupal\Core\Menu

Code

public function serialize() {
    // 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 serialize([
        '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.