‪TYPO3CMS  ‪main
UriBuilder.php
Go to the documentation of this file.
1 <?php
2 
3 declare(strict_types=1);
4 
5 /*
6  * This file is part of the TYPO3 CMS project.
7  *
8  * It is free software; you can redistribute it and/or modify it under
9  * the terms of the GNU General Public License, either version 2
10  * of the License, or any later version.
11  *
12  * For the full copyright and license information, please read the
13  * LICENSE.txt file that was distributed with this source code.
14  *
15  * The TYPO3 project - inspiring people to share!
16  */
17 
19 
33 
38 {
40 
41  protected array ‪$arguments = [];
42  protected array ‪$lastArguments = [];
43  protected string ‪$section = '';
44  protected bool ‪$createAbsoluteUri = false;
45  protected ?string ‪$absoluteUriScheme = null;
46  protected bool|string|int ‪$addQueryString = false;
48  protected bool ‪$linkAccessRestrictedPages = false;
49  protected ?int ‪$targetPageUid = null;
50  protected int ‪$targetPageType = 0;
51  protected ?string ‪$language = null;
52  protected bool ‪$noCache = false;
53  protected string ‪$format = '';
54  protected ?string ‪$argumentPrefix = null;
55 
56  public function ‪__construct(
57  protected readonly ‪ExtensionService $extensionService,
58  ) {}
59 
66  {
67  $this->request = ‪$request;
68  return $this;
69  }
70 
79  {
80  $this->arguments = ‪$arguments;
81  return $this;
82  }
83 
87  public function ‪getArguments(): array
88  {
89  return ‪$this->arguments;
90  }
91 
97  public function ‪setSection(string ‪$section): ‪UriBuilder
98  {
99  $this->section = ‪$section;
100  return $this;
101  }
102 
106  public function ‪getSection(): string
107  {
108  return ‪$this->section;
109  }
110 
116  public function ‪setFormat(string ‪$format): ‪UriBuilder
117  {
118  $this->format = ‪$format;
119  return $this;
120  }
121 
125  public function ‪getFormat(): string
126  {
127  return ‪$this->format;
128  }
129 
136  {
137  $this->createAbsoluteUri = ‪$createAbsoluteUri;
138  return $this;
139  }
140 
144  public function ‪getCreateAbsoluteUri(): bool
145  {
147  }
148 
152  public function ‪getAbsoluteUriScheme(): ?string
153  {
155  }
156 
164  {
165  $this->absoluteUriScheme = ‪$absoluteUriScheme;
166  return $this;
167  }
168 
172  public function ‪setLanguage(?string ‪$language): ‪UriBuilder
173  {
174  $this->language = ‪$language;
175  return $this;
176  }
177 
181  public function ‪getLanguage(): ?string
182  {
183  return ‪$this->language;
184  }
185 
196  public function ‪setAddQueryString(bool|string|int ‪$addQueryString): ‪UriBuilder
197  {
198  $this->addQueryString = ‪$addQueryString;
199  return $this;
200  }
201 
205  public function ‪getAddQueryString(): bool|string|int
206  {
208  }
209 
219  {
220  $this->argumentsToBeExcludedFromQueryString = ‪$argumentsToBeExcludedFromQueryString;
221  return $this;
222  }
223 
228  {
230  }
231 
238  {
239  $this->argumentPrefix = ‪$argumentPrefix;
240  return $this;
241  }
242 
246  public function ‪getArgumentPrefix(): ?string
247  {
249  }
250 
257  {
258  $this->linkAccessRestrictedPages = ‪$linkAccessRestrictedPages;
259  return $this;
260  }
261 
265  public function ‪getLinkAccessRestrictedPages(): bool
266  {
268  }
269 
276  {
277  $this->targetPageUid = ‪$targetPageUid;
278  return $this;
279  }
280 
284  public function ‪getTargetPageUid(): ?int
285  {
287  }
288 
295  {
296  $this->targetPageType = ‪$targetPageType;
297  return $this;
298  }
299 
303  public function ‪getTargetPageType(): int
304  {
306  }
307 
313  public function ‪setNoCache(bool ‪$noCache): ‪UriBuilder
314  {
315  $this->noCache = ‪$noCache;
316  return $this;
317  }
318 
322  public function ‪getNoCache(): bool
323  {
324  return ‪$this->noCache;
325  }
326 
334  public function ‪getLastArguments(): array
335  {
337  }
338 
344  public function ‪reset(): ‪UriBuilder
345  {
346  $this->arguments = [];
347  $this->section = '';
348  $this->format = '';
349  $this->language = null;
350  $this->createAbsoluteUri = false;
351  $this->addQueryString = false;
352  $this->argumentsToBeExcludedFromQueryString = [];
353  $this->linkAccessRestrictedPages = false;
354  $this->targetPageUid = null;
355  $this->targetPageType = 0;
356  $this->noCache = false;
357  $this->argumentPrefix = null;
358  $this->absoluteUriScheme = null;
359  // $this->request MUST NOT be reset here because the request is actually a hard dependency
360  // and not part of the internal state of this object.
361  return $this;
362  }
363 
376  public function ‪uriFor(
377  ?string $actionName = null,
378  ?array $controllerArguments = null,
379  ?string $controllerName = null,
380  ?string $extensionName = null,
381  ?string $pluginName = null
382  ): string {
383  $controllerArguments = $controllerArguments ?? [];
384 
385  if ($actionName !== null) {
386  $controllerArguments['action'] = $actionName;
387  }
388  if ($controllerName !== null) {
389  $controllerArguments['controller'] = $controllerName;
390  } else {
391  $controllerArguments['controller'] = $this->request->getControllerName();
392  }
393  if ($extensionName === null) {
394  $extensionName = $this->request->getControllerExtensionName();
395  }
396  $isFrontend = ‪ApplicationType::fromRequest($this->request)->isFrontend();
397  if ($pluginName === null && $isFrontend) {
398  $pluginName = $this->extensionService->getPluginNameByAction($extensionName, $controllerArguments['controller'], $controllerArguments['action'] ?? null);
399  }
400  if ($pluginName === null) {
401  $pluginName = $this->request->getPluginName();
402  }
403  if ($this->targetPageUid === null && $isFrontend) {
404  $this->targetPageUid = $this->extensionService->getTargetPidByPlugin($extensionName, $pluginName);
405  }
406  if ($this->format !== '') {
407  $controllerArguments['format'] = ‪$this->format;
408  }
409  if ($this->argumentPrefix !== null) {
410  $prefixedControllerArguments = [$this->argumentPrefix => $controllerArguments];
411  } elseif (!$isFrontend) {
412  $prefixedControllerArguments = $controllerArguments;
413  } else {
414  $pluginNamespace = $this->extensionService->getPluginNamespace($extensionName, $pluginName);
415  $prefixedControllerArguments = [$pluginNamespace => $controllerArguments];
416  }
417  ArrayUtility::mergeRecursiveWithOverrule($this->arguments, $prefixedControllerArguments);
418  return $this->‪build();
419  }
420 
429  public function ‪build(): string
430  {
431  if (‪ApplicationType::fromRequest($this->request)->isBackend()) {
432  return $this->‪buildBackendUri();
433  }
434  return $this->‪buildFrontendUri();
435  }
436 
445  public function ‪buildBackendUri(): string
446  {
447  ‪$arguments = [];
448  if ($this->addQueryString && $this->addQueryString !== 'false') {
449  ‪$arguments = $this->request->getQueryParams();
450  foreach ($this->argumentsToBeExcludedFromQueryString as $argumentToBeExcluded) {
451  $argumentArrayToBeExcluded = [];
452  parse_str($argumentToBeExcluded, $argumentArrayToBeExcluded);
453  ‪$arguments = ArrayUtility::arrayDiffKeyRecursive(‪$arguments, $argumentArrayToBeExcluded);
454  }
455  } else {
456  $id = $this->request->getParsedBody()['id'] ?? $this->request->getQueryParams()['id'] ?? null;
457  if ($id !== null) {
458  ‪$arguments['id'] = $id;
459  }
460  }
461  if (($route = $this->request->getAttribute('route')) instanceof ‪Route) {
463  ‪$arguments['route'] = $route->getOption('_identifier');
464  }
465  ‪$arguments = array_replace_recursive(‪$arguments, $this->arguments);
467  $this->lastArguments = ‪$arguments;
468  $routeIdentifier = ‪$arguments['route'] ?? null;
469  unset(‪$arguments['route'], ‪$arguments['token']);
470 
471  // In case the current route identifier is an identifier of a sub route, remove the sub route
472  // part to be able to add the actually requested sub route based on the current arguments.
473  if ($routeIdentifier && str_contains($routeIdentifier, '.')) {
474  [$routeIdentifier] = explode('.', $routeIdentifier);
475  }
476  // Build route identifier to the actually requested sub route (controller / action pair) - if any -
477  // and unset corresponding arguments.
478  if ($routeIdentifier && isset(‪$arguments['controller'], ‪$arguments['action'])) {
479  $routeIdentifier .= '.' . ‪$arguments['controller'] . '_' . ‪$arguments['action'];
480  unset(‪$arguments['controller'], ‪$arguments['action']);
481  }
482  $uri = '';
483  if ($routeIdentifier) {
484  $backendUriBuilder = GeneralUtility::makeInstance(\‪TYPO3\CMS\Backend\Routing\UriBuilder::class);
485  try {
486  if ($this->createAbsoluteUri) {
487  $uri = (string)$backendUriBuilder->buildUriFromRoute($routeIdentifier, ‪$arguments, \‪TYPO3\CMS\Backend\Routing\UriBuilder::ABSOLUTE_URL);
488  } else {
489  $uri = (string)$backendUriBuilder->buildUriFromRoute($routeIdentifier, ‪$arguments);
490  }
491  } catch (‪RouteNotFoundException) {
492  // empty URL
493  }
494  }
495  if ($this->section !== '') {
496  $uri .= '#' . ‪$this->section;
497  }
498  return $uri;
499  }
500 
508  public function ‪buildFrontendUri(): string
509  {
510  $typolinkConfiguration = $this->‪buildTypolinkConfiguration();
511  if ($this->createAbsoluteUri === true) {
512  $typolinkConfiguration['forceAbsoluteUrl'] = true;
513  if ($this->absoluteUriScheme !== null) {
514  $typolinkConfiguration['forceAbsoluteUrl.']['scheme'] = ‪$this->absoluteUriScheme;
515  }
516  }
518  $currentContentObject = $this->request->getAttribute('currentContentObject');
519  return $currentContentObject?->createUrl($typolinkConfiguration) ?? '';
520  }
521 
528  protected function ‪buildTypolinkConfiguration(): array
529  {
530  $typolinkConfiguration = [];
531  $typolinkConfiguration['parameter'] = $this->targetPageUid ?? $this->request->getAttribute('frontend.page.information')?->getId() ?? '';
532  if ($this->targetPageType !== 0) {
533  $typolinkConfiguration['parameter'] .= ',' . ‪$this->targetPageType;
534  } elseif ($this->format !== '') {
535  ‪$targetPageType = $this->extensionService->getTargetPageTypeByFormat($this->request->getControllerExtensionName(), $this->format);
536  $typolinkConfiguration['parameter'] .= ',' . ‪$targetPageType;
537  }
538  if (!empty($this->arguments)) {
539  ‪$arguments = $this->‪convertDomainObjectsToIdentityArrays($this->arguments);
540  $this->lastArguments = ‪$arguments;
541  $typolinkConfiguration['additionalParams'] = ‪HttpUtility::buildQueryString(‪$arguments, '&');
542  }
543  if ($this->addQueryString && $this->addQueryString !== 'false') {
544  $typolinkConfiguration['addQueryString'] = ‪$this->addQueryString;
545  if (!empty($this->argumentsToBeExcludedFromQueryString)) {
546  $typolinkConfiguration['addQueryString.'] = [
547  'exclude' => implode(',', $this->argumentsToBeExcludedFromQueryString),
548  ];
549  }
550  }
551  if ($this->language !== null) {
552  $typolinkConfiguration['language'] = ‪$this->language;
553  }
554  if ($this->noCache === true) {
555  $typolinkConfiguration['no_cache'] = 1;
556  }
557  if ($this->section !== '') {
558  $typolinkConfiguration['section'] = ‪$this->section;
559  }
560  if ($this->linkAccessRestrictedPages === true) {
561  $typolinkConfiguration['linkAccessRestrictedPages'] = 1;
562  }
563  return $typolinkConfiguration;
564  }
565 
575  {
576  foreach (‪$arguments as $argumentKey => $argumentValue) {
577  // if we have a LazyLoadingProxy here, make sure to get the real instance for further processing
578  if ($argumentValue instanceof ‪LazyLoadingProxy) {
579  $argumentValue = $argumentValue->_loadRealInstance();
580  // also update the value in the arguments array, because the lazyLoaded object could be
581  // hidden and thus the $argumentValue would be NULL.
582  ‪$arguments[$argumentKey] = $argumentValue;
583  }
584  if ($argumentValue instanceof \Iterator) {
585  $argumentValue = $this->‪convertIteratorToArray($argumentValue);
586  }
587  if ($argumentValue instanceof ‪DomainObjectInterface) {
588  if ($argumentValue->getUid() !== null) {
589  ‪$arguments[$argumentKey] = $argumentValue->getUid();
590  } elseif ($argumentValue instanceof ‪AbstractValueObject) {
591  ‪$arguments[$argumentKey] = $this->‪convertTransientObjectToArray($argumentValue);
592  } else {
593  throw new ‪InvalidArgumentValueException('Could not serialize Domain Object ' . get_class($argumentValue) . '. It is neither an Entity with identity properties set, nor a Value Object.', 1260881688);
594  }
595  } elseif (is_array($argumentValue)) {
596  ‪$arguments[$argumentKey] = $this->‪convertDomainObjectsToIdentityArrays($argumentValue);
597  }
598  }
599  return ‪$arguments;
600  }
601 
602  protected function ‪convertIteratorToArray(\Iterator $iterator): array
603  {
604  if (method_exists($iterator, 'toArray')) {
605  $array = $iterator->toArray();
606  } else {
607  $array = iterator_to_array($iterator);
608  }
609  return $array;
610  }
611 
618  {
619  $result = [];
620  foreach ($object->_getProperties() as $propertyName => $propertyValue) {
621  if ($propertyValue instanceof \Iterator) {
622  $propertyValue = $this->‪convertIteratorToArray($propertyValue);
623  }
624  if ($propertyValue instanceof ‪DomainObjectInterface) {
625  if ($propertyValue->getUid() !== null) {
626  $result[$propertyName] = $propertyValue->getUid();
627  } else {
628  $result[$propertyName] = $this->‪convertTransientObjectToArray($propertyValue);
629  }
630  } elseif (is_array($propertyValue)) {
631  $result[$propertyName] = $this->‪convertDomainObjectsToIdentityArrays($propertyValue);
632  } else {
633  $result[$propertyName] = $propertyValue;
634  }
635  }
636  return $result;
637  }
638 }
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setArguments
‪static setArguments(array $arguments)
Definition: UriBuilder.php:78
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setTargetPageType
‪static setTargetPageType(int $targetPageType)
Definition: UriBuilder.php:294
‪TYPO3\CMS\Extbase\Mvc\Web\Routing
Definition: UriBuilder.php:18
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$argumentPrefix
‪string $argumentPrefix
Definition: UriBuilder.php:54
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$targetPageUid
‪int $targetPageUid
Definition: UriBuilder.php:49
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getCreateAbsoluteUri
‪getCreateAbsoluteUri()
Definition: UriBuilder.php:144
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setLanguage
‪setLanguage(?string $language)
Definition: UriBuilder.php:172
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\convertIteratorToArray
‪convertIteratorToArray(\Iterator $iterator)
Definition: UriBuilder.php:602
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getTargetPageType
‪getTargetPageType()
Definition: UriBuilder.php:303
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$language
‪string $language
Definition: UriBuilder.php:51
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getLastArguments
‪array getLastArguments()
Definition: UriBuilder.php:334
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder
Definition: UriBuilder.php:38
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$section
‪string $section
Definition: UriBuilder.php:43
‪TYPO3
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$addQueryString
‪bool string int $addQueryString
Definition: UriBuilder.php:46
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$request
‪RequestInterface $request
Definition: UriBuilder.php:39
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getNoCache
‪getNoCache()
Definition: UriBuilder.php:322
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$absoluteUriScheme
‪string $absoluteUriScheme
Definition: UriBuilder.php:45
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setLinkAccessRestrictedPages
‪static setLinkAccessRestrictedPages(bool $linkAccessRestrictedPages)
Definition: UriBuilder.php:256
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\convertDomainObjectsToIdentityArrays
‪array convertDomainObjectsToIdentityArrays(array $arguments)
Definition: UriBuilder.php:574
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\reset
‪static reset()
Definition: UriBuilder.php:344
‪TYPO3\CMS\Extbase\Mvc\Exception\InvalidArgumentValueException
Definition: InvalidArgumentValueException.php:25
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\buildBackendUri
‪string buildBackendUri()
Definition: UriBuilder.php:445
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\__construct
‪__construct(protected readonly ExtensionService $extensionService,)
Definition: UriBuilder.php:56
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$targetPageType
‪int $targetPageType
Definition: UriBuilder.php:50
‪TYPO3\CMS\Backend\Routing\Route
Definition: Route.php:24
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getAddQueryString
‪getAddQueryString()
Definition: UriBuilder.php:205
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$arguments
‪array $arguments
Definition: UriBuilder.php:41
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getLanguage
‪getLanguage()
Definition: UriBuilder.php:181
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setArgumentPrefix
‪static setArgumentPrefix(string $argumentPrefix)
Definition: UriBuilder.php:237
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$lastArguments
‪array $lastArguments
Definition: UriBuilder.php:42
‪TYPO3\CMS\Backend\Routing\Exception\RouteNotFoundException
Definition: RouteNotFoundException.php:21
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getArgumentPrefix
‪getArgumentPrefix()
Definition: UriBuilder.php:246
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getArgumentsToBeExcludedFromQueryString
‪getArgumentsToBeExcludedFromQueryString()
Definition: UriBuilder.php:227
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getArguments
‪getArguments()
Definition: UriBuilder.php:87
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$linkAccessRestrictedPages
‪bool $linkAccessRestrictedPages
Definition: UriBuilder.php:48
‪TYPO3\CMS\Extbase\DomainObject\AbstractValueObject
Definition: AbstractValueObject.php:26
‪TYPO3\CMS\Extbase\DomainObject\DomainObjectInterface
Definition: DomainObjectInterface.php:33
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getSection
‪getSection()
Definition: UriBuilder.php:106
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setAbsoluteUriScheme
‪static setAbsoluteUriScheme(string $absoluteUriScheme)
Definition: UriBuilder.php:163
‪TYPO3\CMS\Core\Utility\HttpUtility\buildQueryString
‪static string buildQueryString(array $parameters, string $prependCharacter='', bool $skipEmptyParameters=false)
Definition: HttpUtility.php:124
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setCreateAbsoluteUri
‪static setCreateAbsoluteUri(bool $createAbsoluteUri)
Definition: UriBuilder.php:135
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\buildTypolinkConfiguration
‪array buildTypolinkConfiguration()
Definition: UriBuilder.php:528
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\uriFor
‪string uriFor(?string $actionName=null, ?array $controllerArguments=null, ?string $controllerName=null, ?string $extensionName=null, ?string $pluginName=null)
Definition: UriBuilder.php:376
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$format
‪string $format
Definition: UriBuilder.php:53
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getTargetPageUid
‪getTargetPageUid()
Definition: UriBuilder.php:284
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setNoCache
‪static setNoCache(bool $noCache)
Definition: UriBuilder.php:313
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$noCache
‪bool $noCache
Definition: UriBuilder.php:52
‪TYPO3\CMS\Extbase\Mvc\RequestInterface
Definition: RequestInterface.php:24
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setTargetPageUid
‪static setTargetPageUid(int $targetPageUid)
Definition: UriBuilder.php:275
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getAbsoluteUriScheme
‪getAbsoluteUriScheme()
Definition: UriBuilder.php:152
‪TYPO3\CMS\Core\Utility\ArrayUtility
Definition: ArrayUtility.php:26
‪TYPO3\CMS\Extbase\Persistence\Generic\LazyLoadingProxy
Definition: LazyLoadingProxy.php:30
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setSection
‪static setSection(string $section)
Definition: UriBuilder.php:97
‪TYPO3\CMS\Extbase\Service\ExtensionService
Definition: ExtensionService.php:34
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$argumentsToBeExcludedFromQueryString
‪array $argumentsToBeExcludedFromQueryString
Definition: UriBuilder.php:47
‪TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer
Definition: ContentObjectRenderer.php:102
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setRequest
‪static setRequest(RequestInterface $request)
Definition: UriBuilder.php:65
‪TYPO3\CMS\Core\Utility\HttpUtility
Definition: HttpUtility.php:24
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setAddQueryString
‪static setAddQueryString(bool|string|int $addQueryString)
Definition: UriBuilder.php:196
‪TYPO3\CMS\Core\Http\fromRequest
‪@ fromRequest
Definition: ApplicationType.php:66
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\convertTransientObjectToArray
‪convertTransientObjectToArray(DomainObjectInterface $object)
Definition: UriBuilder.php:617
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setFormat
‪static setFormat(string $format)
Definition: UriBuilder.php:116
‪TYPO3\CMS\Core\Utility\GeneralUtility
Definition: GeneralUtility.php:52
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getFormat
‪getFormat()
Definition: UriBuilder.php:125
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\buildFrontendUri
‪string buildFrontendUri()
Definition: UriBuilder.php:508
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\build
‪string build()
Definition: UriBuilder.php:429
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\getLinkAccessRestrictedPages
‪getLinkAccessRestrictedPages()
Definition: UriBuilder.php:265
‪TYPO3\CMS\Core\Http\ApplicationType
‪ApplicationType
Definition: ApplicationType.php:55
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\$createAbsoluteUri
‪bool $createAbsoluteUri
Definition: UriBuilder.php:44
‪TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder\setArgumentsToBeExcludedFromQueryString
‪static setArgumentsToBeExcludedFromQueryString(array $argumentsToBeExcludedFromQueryString)
Definition: UriBuilder.php:218