Exportar datos de MySQL a .csv usando PHP

Estoy exportando datos a un archivo .csv y está funcionando perfectamente pero tengo un pequeño problema. Busco el name y el gender de una tabla, pero para el género guardo la id en mi base de datos (es decir, 1 = Male , 2 = Female ). Mi código a continuación me da una identificación para el género, ¿cómo puedo solucionarlo? Devuelve 1 para hombre y 2 para mujer:

 $rows = mysql_query("SELECT `name`, `gender` FROM TABLE"); while ($row = mysql_fetch_assoc($rows)) { fputcsv($output, $row); } 

Prueba esto :

 $rows = mysql_query("SELECT `name`, `gender` FROM TABLE"); while ($row = mysql_fetch_assoc($rows)) { if($row['gender'] == 1) { $row['gender'] = 'Male'; } else { $row['gender'] = 'Female'; } // Or ternary condition // $row['gender'] = ($row['gender'] == 1 ? 'Male' : 'Female'); fputcsv($output, $row); } 
 < ?php $db_record = 'yourRecod'; // optional where query $where = 'WHERE 1 ORDER BY 1'; // filename for export $csv_fileName = 'db_export_'.$db_record.'_'.date('Ym-d').'.csv'; // database variables $hostname = "localhost"; $user = "yourUserName"; $password = "yourPassword"; $database = "yourDataBase"; // Database connecten voor alle services mysql_connect($hostname, $user, $password) or die('Could not connect: ' . mysql_error()); mysql_select_db($database) or die ('Could not select database ' . mysql_error()); $csv_export = ''; $query = mysql_query("SELECT * FROM ".$db_record." ".$where); $field = mysql_num_fields($query); // create line with field names for($i = 0; $i < $field; $i++) { $csv_export.= mysql_field_name($query,$i).';'; } $csv_export.= ''; while($row = mysql_fetch_array($query)) { // create line with field values for($i = 0; $i < $field; $i++) { $csv_export.= '"'.$row[mysql_field_name($query,$i)].'";'; } $csv_export.= ''; } // Export the data and prompt a csv file for download header("Content-type: text/x-csv"); header("Content-Disposition: attachment; filename=".$csv_fileName.""); echo($csv_export); ?> 

Le doy el código de muestra completo que estoy usando para exportar datos de MySql a .CSV usando PHP

Use la IF statement en su SQL para minimizar la lógica de PHP:

 SELECT `name`, IF(gender=1,'Male','Female') as 'gender' FROM TABLE