Я предполагаю, что вы знаете, как извлечь данные MySQL в массив ... итак, у нас есть:
[0] {
num => 1,
field => "Gas",
company => "abcd",
phone => "123456789",
website => "abcd.com"
}
[1] ... (so on)
Затем создайте цикл, подобный:
foreach($data as $row) {
$service = $row["field"]; //Water, Gas, etc...
unset($row["field"]); //do not add this
foreach($row as $key => $value) {
$field[$service][$key][] = $value;
}
}
Полученный массив будет выглядеть примерно так:
$field["Gas"]["company"][0] = "abcd";
$field["Gas"]["company"][1] = "qrst";
$field["Water"]["company"][0] = "efgh";
...
$field["Gas"]["phone"][0] = "123456789";
$field["Gas"]["phone"][1] = "123789654";
$field["Water"]["phone"][0] = "987654321";
...
Таким образом, вы можете сгенерировать вывод:
foreach($field as $service => $infoarr) {
echo $service."\n";
foreach($infoarr as $info => $datarr) {
foreach($datarr as $datum) {
echo $datum."\t";
}
echo "\n";
}
echo "\n";
}
Теоретически (не проверено) выдаст:
Gas
abcd qrst
123456789 123789654
Water
efgh ...
Надеюсь, вы найдете это полезным ... Должен быть лучший способ, но я не подумала
слишком много об этом ...