php讀取csv數(shù)據(jù)保存到數(shù)組的方法
本文實(shí)例講述了php讀取csv數(shù)據(jù)保存到數(shù)組的方法。分享給大家供大家參考。具體分析如下:
csv是常用的excel格式的替代品,很多時(shí)候我們導(dǎo)出數(shù)據(jù)是都會(huì)導(dǎo)成csv格式的,這樣和excel沒什么區(qū)別,下面的程序是要讀取csv數(shù)據(jù)保存到數(shù)組我們要對(duì)數(shù)據(jù)進(jìn)行操作,所以保存到數(shù)據(jù),代碼如下:
//echo '<pre>';
//print_r($info);
//echo '</pre>';
foreach ($info as $c)
{
echo '學(xué)號(hào):'.$c[0];
echo '姓名:'.$c[1];
echo '年齡:'.$c[2];
echo '身高:'.$c[3].'<br>';
}
final class csvtoarray{
/**
* 把csv文件解析為一個(gè)數(shù)組返回
*
* @param string $file 要解析的csv文件路徑
* @param char $delimiter csv文件里的內(nèi)容分隔符 默認(rèn)為;
* @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;
}
}
希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。
相關(guān)文章
php cURL和Rolling cURL并發(fā)方式比較
在實(shí)際項(xiàng)目或者自己編寫小工具(比如新聞聚合,商品價(jià)格監(jiān)控,比價(jià))的過程中, 通常需要從第3方網(wǎng)站或者API接口獲取數(shù)據(jù), 在需要處理1個(gè)URL隊(duì)列時(shí), 為了提高性能, 可以采用cURL提供的curl_multi_*族函數(shù)實(shí)現(xiàn)簡(jiǎn)單的并發(fā)。2013-10-10解決php表單重復(fù)提交實(shí)現(xiàn)方法
這篇文章主要介紹了解決php表單重復(fù)提交實(shí)現(xiàn)方法,需要的朋友可以參考下2015-09-09php通過正則表達(dá)式記取數(shù)據(jù)來讀取xml的方法
這篇文章主要介紹了php通過正則表達(dá)式記取數(shù)據(jù)來讀取xml的方法,實(shí)例分析了php正則表達(dá)式的技巧及讀取XML文件的方法,需要的朋友可以參考下2015-03-03PHP獲得當(dāng)日零點(diǎn)時(shí)間戳的方法分析
這篇文章主要介紹了PHP獲得當(dāng)日零點(diǎn)時(shí)間戳的方法,結(jié)合實(shí)例形式分析了php常見時(shí)間戳轉(zhuǎn)換與運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2018-03-03