《PHP學習:php讀取csv數(shù)據(jù)保存到數(shù)組的方法》要點:
本文介紹了PHP學習:php讀取csv數(shù)據(jù)保存到數(shù)組的方法,希望對您有用。如果有疑問,可以聯(lián)系我們。
本文實例講述了php讀取csv數(shù)據(jù)保存到數(shù)組的辦法.分享給大家供大家參考.具體分析如下:PHP教程
csv是常用的excel格式的替代品,很多時候我們導出數(shù)據(jù)是都會導成csv格式的,這樣和excel沒什么區(qū)別,下面的程序是要讀取csv數(shù)據(jù)保存到數(shù)組我們要對數(shù)據(jù)進行操作,所以保存到數(shù)據(jù),代碼如下:
PHP教程
代碼如下:
$info=csvtoarray::open('teste.csv');
//echo '<pre>';
//print_r($info);
//echo '</pre>';
foreach ($info as $c)
?{
? echo '學號:'.$c[0];
? echo '姓名:'.$c[1];
? echo '年齡:'.$c[2];
? echo '身高:'.$c[3].'<br>';
?}
?
?
?final class csvtoarray{
?
? /**
?? * 把csv文件解析為一個數(shù)組返回
?? *
?? * @param string $file 要解析的csv文件路徑?
?? * @param char $delimiter csv文件里的內(nèi)容分隔符 默認為;
?? * @return array
?? */
? public static function open($file, $delimiter = ';'){
?? return self::ordenamultiarray(self::csvarray($file, $delimiter), 1);
? }
?
? private function csvarray($file, $delimiter)
? {
?? $result = array();
?? $size = filesize($file) + 1;
?? $file = fopen($file, 'r');
?? $keys = fgetcsv($file, $size, $delimiter);
?? fseek($file,0);//這里原來的沒有..自己加上..這樣能讀取到第一行的內(nèi)容
?? while ($row = fgetcsv($file, $size, $delimiter))
?? {
??? for($i = 0; $i < count($row); $i++)
??? {
???? if(array_key_exists($i, $keys))
???? {
????? $row[$keys[$i]] = $row[$i];
???? }
??? }
??? print_r($row);
??? $result[] = $row;
?? }
?
?? fclose($file);
?
?? return $result;
? }
? private function ordenamultiarray($multiarray, $secondindex)
? {
?? while (list($firstindex, ) = each($multiarray))
?? $indexmap[$firstindex] = $multiarray[$firstindex][$secondindex];
?? asort($indexmap);
?? while (list($firstindex, ) = each($indexmap))
?? if (is_numeric($firstindex))
?? $sortedarray[] = $multiarray[$firstindex];
?? else $sortedarray[$firstindex] = $multiarray[$firstindex];
?? return $sortedarray;
? }
}
希望本文所述對大家的php程序設計有所贊助.PHP教程
維易PHP培訓學院每天發(fā)布《PHP學習:php讀取csv數(shù)據(jù)保存到數(shù)組的方法》等實戰(zhàn)技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養(yǎng)人才。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/12849.html