CSV形式のファイルを読み込み、入れ子のリストで表示

CSV形式のファイルを読み込み、入れ子のリストで表示する方法。

サンプル

読み込むCSV形式ファイルの内容

読み込むファイル「sample.csv」の内容。

"1-1","1-2","1-3"
"2-1","2-2","2-3"
"3-1","3-2","3-3"

PHPコード

<?php

$file = "sample.csv";
if ( ( $handle = fopen ( $file, "r" ) ) !== FALSE ) {
    echo "<ol>\n";
    while ( ( $data = fgetcsv ( $handle, 1000, ",", '"' ) ) !== FALSE ) {
        echo "\t<li>\n";
        for ( $i = 0; $i < count( $data ); $i++ ) {
            if ( $i == 0 ) { echo "\t\t<ol>\n"; }
            echo "\t\t\t<li>{$data[$i]}</li>\n";
            if ( $i == count( $data ) - 1  ) { echo "\t\t</ol>\n"; }
        }
        echo "\t</li>\n";
    }
    echo "</ol>\n";
    fclose ( $handle );
}

?>

↓↓↓出力結果↓↓↓

出力結果

HTMLコード

<ol>
    <li>
        <ol>
            <li>1-1</li>
            <li>1-2</li>
            <li>1-3</li>
        </ol>
    </li>
    <li>
        <ol>
            <li>2-1</li>
            <li>2-2</li>
            <li>2-3</li>
        </ol>
    </li>
    <li>
        <ol>
            <li>3-1</li>
            <li>3-2</li>
            <li>3-3</li>
        </ol>
    </li>
</ol>

ブラウザ表示例

    1. 1-1
    2. 1-2
    3. 1-3
    1. 2-1
    2. 2-2
    3. 2-3
    1. 3-1
    2. 3-2
    3. 3-3

スポンサード リンク

カテゴリー: CSVファイル, PHP, リスト, 逆引き パーマリンク