Все возможные варианты значений полей [дубликат]

158
08 февраля 2018, 18:07

На данный вопрос уже ответили:

  • Преобразование массива php 6 ответов

Есть фильтрация, 4 поля, доступные значения приведены в таблице ниже

---------------------------------
gender | size | diameter | color
---------------------------------
 0     | 0    | 0        | 0     
 1     | 1    | 1        | 1     
 2     | 2    | 2        | 2     
 3     | 3    | 3        | 3     
       | 4    | 4        | 4     
       | 5    | 5        | 5     
       | 6    | 6        | 6     
       | 7    | 7        | 7     
       | 8    | 8        | 8    
       | 9    | 9        | 9    
       | 10   | 10       | 10  
       | 11   | 11       |    
       | 12   |          |    
       | 13   |          |     

Как мне получить все возможные варианты сочетания значений этих полей для урл, включая пустые значения?

Answer 1

Варианта 2:

1) Через 4 вложенных цикла - это не очень хороший стиль, но простой в реализации.

2) Через рекурсию:

$a = array (
        array ("a", "b", "c"),
        array ("d", "f"),
        array ("g", "k")
    );

    function fill (&$arr, $idx = 0) {
        static $line = array();
        static $keys;
        static $max;
        static $results;
        if ($idx == 0) {
            $keys = array_keys($arr);
            $max = count($arr);
            $results = array();
        }
        if ($idx < $max) {
            $values = $arr[$keys[$idx]];
            foreach ($values as $value) {
                array_push($line, $value);
                fill($arr, $idx+1);
                array_pop($line);
            }
        } else {
            $results[] = $line;
        }
        if ($idx == 0) return $results;
    }
    print_r(fill($a));

Код найден на просторе интернета и был когда-то использован во благо :)

READ ALSO
вызов картинки через get_option

вызов картинки через get_option

Всем привет! На сайте Wordpress пытаюсь отобразить во фронтенде картинку, которую загружаю через собственную настройку в родном кастомайзереРаботает...

207
Почему таблица содержит &gt;= 25 &lt; tr &gt;

Почему таблица содержит >= 25 < tr >

Добрый день! Собственно проблема в то что при запуске данного безобразия отображаются таблицы с рандомно генерируемыми людьми, но в таблице...

148
Не могу понять в чем ошибка PHP/Call to undefined function

Не могу понять в чем ошибка PHP/Call to undefined function

Подскажите пожалуйста почему не видит метод readAndWriteRegions?

213
Функция отправки купона

Функция отправки купона

У меня на сайте имеется страница страница с отзывами, в который пользователь может оставить свой отзывПосле того, как человек оставляет отзыв,...

178