выводить разные значения столбца из другого столбца из результата mysqli - PullRequest
0 голосов
/ 22 мая 2019

Я составляю сравнительную таблицу планов из планов, которые я добавил в mysql.

это запрос

SELECT * 
FROM webhosting 
INNER JOIN webhosting_cat
ON webhosting.cat = webhosting_cat.id
WHERE cat='$cat'

Так, например, в таблице "веб-хостинг" есть этостолбцы: план, цена, ssd_space

Этот запрос MySQL возвращает 3 результата, и я хочу иметь возможность печатать результаты, такие как $row['plan'][0], $row['plan'][1] и $row['plan'][2]

Isэто возможно?

Я использую php 7.3 и MariaDB.

1 Ответ

0 голосов
/ 22 мая 2019

Поскольку я не знаю точно, как вы будете использовать ваши данные, может быть наиболее выгодно перегруппировать ваши данные PHP.

$arr = [[ 'foo' => 1, 'bar' => 1 ], [ 'foo' => 2, 'bar' => 2 ], [ 'foo' => 3, 'bar' => 3 ], [ 'foo' => 4, 'bar' => 4 ], [ 'foo' => 5, 'bar' => 5 ]];
function regroup($arr) {
    return array_reduce($arr, function($acc, $row) {
        foreach($row as $k => $v) $acc[$k][] = $v;
        return $acc;
    }, []);
}
print_r(regroup($arr));

// Array (
//     [foo] => Array
//              (
//             [0] => 1
//             [1] => 2
//             [2] => 3
//             [3] => 4
//             [4] => 5
//         )
//
//     [bar] => Array
//              (
//             [0] => 1
//             [1] => 2
//             [2] => 3
//             [3] => 4
//             [4] => 5
//         )
// )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...