2018-07-24 11:11:32 +00:00
|
|
|
<?php
|
|
|
|
|
use Webkul\Core\Core;
|
2018-08-21 10:58:55 +00:00
|
|
|
|
2018-07-24 11:11:32 +00:00
|
|
|
if (! function_exists('core')) {
|
|
|
|
|
function core()
|
|
|
|
|
{
|
2018-10-04 06:42:06 +00:00
|
|
|
return app()->make(Core::class);
|
2018-07-24 11:11:32 +00:00
|
|
|
}
|
|
|
|
|
}
|
2018-08-02 04:19:45 +00:00
|
|
|
|
|
|
|
|
if (! function_exists('array_permutation')) {
|
|
|
|
|
function array_permutation($input)
|
|
|
|
|
{
|
|
|
|
|
$results = [];
|
|
|
|
|
|
2018-08-30 13:22:15 +00:00
|
|
|
foreach ($input as $key => $values) {
|
2018-08-02 04:19:45 +00:00
|
|
|
if (empty($values)) {
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (empty($results)) {
|
|
|
|
|
foreach($values as $value) {
|
|
|
|
|
$results[] = [$key => $value];
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
$append = [];
|
|
|
|
|
|
|
|
|
|
foreach($results as &$result) {
|
|
|
|
|
$result[$key] = array_shift($values);
|
|
|
|
|
|
|
|
|
|
$copy = $result;
|
|
|
|
|
|
|
|
|
|
foreach($values as $item) {
|
|
|
|
|
$copy[$key] = $item;
|
|
|
|
|
$append[] = $copy;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
array_unshift($values, $result[$key]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$results = array_merge($results, $append);
|
|
|
|
|
}
|
|
|
|
|
}
|
2018-08-30 13:22:15 +00:00
|
|
|
|
2018-08-02 04:19:45 +00:00
|
|
|
return $results;
|
|
|
|
|
}
|
|
|
|
|
}
|
2018-07-24 11:11:32 +00:00
|
|
|
?>
|