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\DomCrawlerCode
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,
];
}