Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. FormFieldRegistry.php

function FormFieldRegistry::getSegments

Splits a field name into segments as a web browser would do.

getSegments('base[foo][3][]') = ['base', 'foo, '3', ''];

Return value

string[]

3 calls to FormFieldRegistry::getSegments()
FormFieldRegistry::add in vendor/symfony/dom-crawler/FormFieldRegistry.php
Adds a field to the registry.
FormFieldRegistry::get in vendor/symfony/dom-crawler/FormFieldRegistry.php
Returns the value of the field based on the fully qualified name and its children.
FormFieldRegistry::remove in vendor/symfony/dom-crawler/FormFieldRegistry.php
Removes a field based on the fully qualified name and its children from the registry.

File

vendor/symfony/dom-crawler/FormFieldRegistry.php, line 157

Class

FormFieldRegistry
This is an internal class that must not be used directly.

Namespace

Symfony\Component\DomCrawler

Code

private function getSegments(string $name) : array {
    if (preg_match('/^(?P<base>[^[]+)(?P<extra>(\\[.*)|$)/', $name, $m)) {
        $segments = [
            $m['base'],
        ];
        while (!empty($m['extra'])) {
            $extra = $m['extra'];
            if (preg_match('/^\\[(?P<segment>.*?)\\](?P<extra>.*)$/', $extra, $m)) {
                $segments[] = $m['segment'];
            }
            else {
                $segments[] = $extra;
            }
        }
        return $segments;
    }
    return [
        $name,
    ];
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal