PHP读取csv文件内容的几个例子
时间:2021-07-01 10:21:17
帮助过:31人阅读
- $file = fopen('windows_2011_s.csv','r');
- while ($data = fgetcsv($file)) { //每次读取CSV里面的一行内容
- //print_r($data); //此为一个数组,要获得每一个数据,访问数组下标即可
- $goods_list[] = $data;
- }
- //print_r($goods_list);
- /* foreach ($goods_list as $arr){
- if ($arr[0]!=""){
- echo $arr[0]."
"; - }
- } */
- echo $goods_list[2][0];
- fclose($file);
- ?>
例2,读取csv文件的某一行数据。
- function get_file_line( $file_name, $line ){
- $n = 0;
- $handle = fopen($file_name,'r');
- if ($handle) {
- while (!feof($handle)) {
- ++$n; // bbs.it-home.org
- $out = fgets($handle, 4096);
- if($line==$n) break;
- }
- fclose($handle);
- }
- if( $line==$n) return $out;
- return false;
- }
- echo get_file_line("windows_2011_s.csv", 10);
- ?>
例3,读取csv文件制定行数(行区间)。
- function get_file_line( $file_name, $line_star, $line_end){
- $n = 0;
- $handle = fopen($file_name,"r");
- if ($handle) {
- while (!feof($handle)) {
- ++$n;
- $out = fgets($handle, 4096);
- if($line_star <= $n){
- $ling[] = $out;
- }
- if ($line_end == $n) break;
- }
- fclose($handle);
- } // bbs.it-home.org
- if( $line_end==$n) return $ling;
- return false;
- }
- $aa = get_file_line("windows_2011_s.csv", 11, 20); //从第11行到第20行
- foreach ($aa as $bb){
- echo $bb."
"; - }
- ?>
例4,网友提供的二个方法,未经测试。
方法1,
- //读取csv文件的内容
- $handle=fopen("1.csv","r");
- while(!feof($handle)){
- $buffer=fgetss($handle,2048);
- $data=explode(",",$buffer);
- $num=count($data);
- for($i=0;$i<$num;$i++){
- print_r($data);
- }
- }
- ?>
方法2,
- //读取csv文件的内容
- $handle=fopen("1.csv","r");
- $row=1;
- while($data=fgetcsv($handle,1000,",")){
- $num=count($data);
- for($i=0;$i<$num;$i++){
- echo $data[$i];
- }
- $row++;
- }
- ?>
|