‪TYPO3CMS  ‪main
TYPO3\CMS\Core\Utility\PermutationUtility Class Reference

Static Public Member Functions

static string[] meltStringItems (array $payload, string $previousResult='')
 
static array[] meltArrayItems (array $payload, array $previousResult=[])
 

Static Protected Member Functions

static nextItems (array &$payload)
 

Detailed Description

Class with helper functions for permuting items.

Definition at line 23 of file PermutationUtility.php.

Member Function Documentation

◆ meltArrayItems()

static array [] TYPO3\CMS\Core\Utility\PermutationUtility::meltArrayItems ( array  $payload,
array  $previousResult = [] 
)
static

◆ meltStringItems()

static string [] TYPO3\CMS\Core\Utility\PermutationUtility::meltStringItems ( array  $payload,
string  $previousResult = '' 
)
static

Combines string items of multiple arrays as cross-product into flat items.

Example:

  • ‪meltStringItems([['a', 'b'], ['c', 'd'], ['e', 'f']])
  • ‪results into ['ace', 'acf', 'ade', 'adf', 'bce', 'bcf', 'bde', 'bdf']
Parameters
array[]$payload‪Distinct array that should be melted
string$previousResult‪Previous item results
Returns
‪string[]

Definition at line 36 of file PermutationUtility.php.

Referenced by TYPO3\CMS\Frontend\Tests\Functional\SiteHandling\SiteRequestTest\checkIfIndexPhpReturnsShortcutRedirectWithPageIdAndTypeNumProvidedDataProvider(), TYPO3\CMS\Core\Tests\Unit\Utility\PermutationUtilityTest\meltStringItemsIsExecuted(), TYPO3\CMS\Frontend\Tests\Functional\SiteHandling\SiteRequestTest\pageIsRenderedWithDomainsDataProvider(), TYPO3\CMS\Frontend\Tests\Functional\SiteHandling\SiteRequestTest\pageIsRenderedWithPathsAndChineseDefaultLanguageDataProvider(), TYPO3\CMS\Frontend\Tests\Functional\SiteHandling\SiteRequestTest\pageIsRenderedWithPathsDataProvider(), TYPO3\CMS\Frontend\Tests\Functional\SiteHandling\SlugSiteWithoutRequiredCHashRequestTest\pageIsRenderedWithValidCacheHashDataProvider(), TYPO3\CMS\Frontend\Tests\Functional\SiteHandling\SiteRequestTest\pageIsRenderedWithValidCacheHashDataProvider(), TYPO3\CMS\Frontend\Tests\Functional\SiteHandling\SlugSiteWithoutRequiredCHashRequestTest\pageRenderingStopsWithInvalidCacheHashDataProvider(), TYPO3\CMS\Frontend\Tests\Functional\SiteHandling\SiteRequestTest\pageRenderingStopsWithInvalidCacheHashDataProvider(), and TYPO3\CMS\Frontend\Tests\Functional\SiteHandling\SiteRequestTest\shortcutsAreRedirectedDataProvider().

◆ nextItems()

static TYPO3\CMS\Core\Utility\PermutationUtility::nextItems ( array &  $payload)
staticprotected

Definition at line 91 of file PermutationUtility.php.