戻る

CSVファイルを読み込み後に分割する(参考)

fwrite()関数 fputs()関数

この例はfgets()関数を使ったCSVファイルを処理する例です。まずfgets()関数によってCSVファイルから1行のデータを変数$filedataに読み込みます。そしてexplode()関数でカンマごとに分割し、分割された個々のデータをlist()関数の引数に列挙された変数へ順番に代入していきます。それ以降はCSVファイルの各列データを(fgetcsv()関数のような)配列のインデックスで扱うのではなく、それぞれ異なる変数名で扱えます。

PHP

<?php
header("Content-type: text/html; charset=utf-8");

if(!$fp = @fopen("data/FIFARank.csv","r")){
	echo "ファイルを開けませんでした!";
	exit();
}

$html = "";

while(!feof($fp)){
	$filedata = fgets($fp);
	
	if($filedata != ""){
		list($rank, $team, $area, $point) = explode(",", $filedata);
		
		$html .= "<tr>";
		$html .= "<td>" . $rank . "</td>";
		$html .= "<td>" . $team . "</td>";
		$html .= "<td>" . $area . "</td>";
		$html .= "<td>" . $point . "</td>";
		$html .= "</tr>";
	}
}

fclose($fp);
 
$html = mb_convert_encoding($html, "utf-8", "shift_jis");
?>
<!DOCTYPE HTML>
<html lang="ja-JP">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<table border="1">
<tr>
	<td>ランク</td><td>チーム</td><td>地域</td><td>ポイント</td>
</tr>
<?=$html?>
</table>
</body>
</html>

inserted by FC2 system