A veces nos encontramos con el origen de los datos es un csv, vamos a explicar a leer un csv en php y mostrarlo en una tabla html.
Para ello vamos a explciar primero las funciones php que vamos a utilizar.
Primero utilizaremos la función str_getcsv que convierte un string con formato CSV a un array http://php.net/manual/es/function.str-getcsv.php
Y despues utilizaremos array_map que aplica la retrollamada a los elementos de los arrays dados http://php.net/manual/es/function.array-map.php
Para entendernos, lo que vamos a hacer es convertir el csv en una matriz con las funciones str_getcsv y array_map y kostrarlo en una tabla html recorriendo la matriz
Ahora paso a explicar las partes del codigo.
En estas dos lineas definimos la ubicacion del csv y creamos una variable donde gaurdamos el csv en una matriz.
<?php
//ubicacion csv
define('CSV', '100Records.csv');
//leer csv
$readCsv = array_map('str_getcsv', file(CSV));
?>
Y despues recorremos la matriz en dos bucles, uno para las filas y otro para las celdas
foreach ($readCsv as $itemCsv) {
//recorremos cerdas del csv
foreach ($itemCsv as $elementoItemCSV) {
//mostramos la celda
echo $elementoItemCSV;
}
}
El resultado final es el siguiente:

Y el codigo completo es el siguiente y lo podeis ver aqui en funcionamiento: http://programacionconphp.com/dev/readCSV/
<?php
//index.php
//ubicacion csv
define('CSV', '100Records.csv');
//leer csv
$readCsv = array_map('str_getcsv', file(CSV));
?>
<html>
<table border="1">
<?php
//recorremos filas del csv
foreach ($readCsv as $itemCsv) {
echo '<tr>';
//recorremos celdas del csv
foreach ($itemCsv as $elementoItemCSV) {
echo '<td>';
//mostramos la celda
echo $elementoItemCSV;
echo '</td>';
}
echo '</tr>';
}
?>
</table>
</html>
El codigo del ejemplo lo podeis obtener desde aqui: https://github.com/victorgarciasisi/readCSV