四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

PHP按行讀取、處理較大CSV文件的代碼實例

對于數百萬條數據量的CSV文件,文件大小可能達到數百M,如果簡單讀取的話很可能出現超時或者卡死的現象。

為了成功將CSV文件里的數據導入數據庫,分批處理是非常必要的。

下面這個函數是讀取CSV文件中指定的某幾行數據:
復制代碼 代碼如下:
/**
 * csv_get_lines 讀取CSV文件中的某幾行數據
 * @param $csvfile csv文件路徑
 * @param $lines 讀取行數
 * @param $offset 起始行數
 * @return array
 * */
function csv_get_lines($csvfile, $lines, $offset = 0) {
    if(!$fp = fopen($csvfile, 'r')) {
     return false;
    }
    $i = $j = 0;
 while (false !== ($line = fgets($fp))) {
  if($i++ < $offset) {
   continue;
  }
  break;
 }
 $data = array();
 while(($j++ < $lines) && !feof($fp)) {
  $data[] = fgetcsv($fp);
 }
 fclose($fp);
    return $data;
}
調用方法:
復制代碼 代碼如下:
$data = csv_get_lines('path/bigfile.csv', 10, 2000000);
print_r($data);

函數主要采用行定位的思路,通過跳過起始行數來實現文件指針定位。

上述函數對500M以內的文件進行過測試,運行通暢,對于更大的文件未做測試,請斟酌使用或加以改進。

php技術PHP按行讀取、處理較大CSV文件的代碼實例,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 电视剧媳妇| 美食总动员在线观看完整版免费| 第八种爱情演员表| 昆虫总动员2免费观看完整版| 水浒传老版83全集免费下载| 朱丽安·摩尔| 我仍在此 电影| 电影二嫫1994在线观看完整版| 三年级片| 代高政最新短剧| 圆的认识评课| 兰陵王电影| 廖凡演的电影| livecams直播表演视频| 3d成人国产同人动漫焰灵姬| 电影《在云端》| 怀孕肚脐眼凸起和凹进去有什么区别| 超越情感电视剧免费观看全集完整版| 爱情买卖网站 电影| 疯狂试爱四| 小孩打屁股| 海蓝之谜精粹水| 远景山谷 (1981)中字| 欲海情缘| 在线播放www精品视频一级下载| 北京1号线地铁站点线路图| 麦兆辉| 女同性激烈床戏舌吻戏| 泰迪熊3| 任嘉伦| 云上的宝石| 电影《瞬间》| 难兄难弟 电视剧| 石田介雄| 赖小子| 约翰尼·西蒙斯| 卡特琳娜·格兰厄姆| 55天在北京| 金珊| 《摧花狂魔》电影| 叶凯薇的视频|