У вас должен быть либо список столбцов для меток, что делает скрипт специфичным для базы данных:
$labels = array(
'col_name'=>'Column 1',
'id'=>'User ID'
); // and so on
$result = mysql_query("show columns from mash");
for ($i = 0; $i < mysql_num_rows($result); $i++) {
$colArray[$i] = mysql_fetch_assoc($result);
$fieldArray[$i] = $labels[$colArray[$i]['Field']];
}
fputcsv($fp,$fieldArray);
ИЛИ, вам нужно создать базу данных с этимвид метаданных.Он может иметь три поля: source_table, source_column, column_label.Это добавит еще один запрос к соединению, но позволит сделать код универсальным.
Последний способ - использовать некое простое соглашение об именах с разделителем, например, подчеркивание (_), а затем удалить подчеркиваниеи применить название дела.field_1 становится «Field 1», «user_id» становится «User Id» и т. д.
$result = mysql_query("show columns from mash");
for ($i = 0; $i < mysql_num_rows($result); $i++) {
$colArray[$i] = mysql_fetch_assoc($result);
$fieldArray[$i] = _title_case_function_(str_replace('_', ' ', $colArray[$i]['Field']]));
}
fputcsv($fp,$fieldArray);