加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP处理csv文件代码详解

发布时间:2023-08-25 10:49:57 所属栏目:PHP教程 来源:
导读:在php中读取操作csv文件的方法有很多,最简单的可以直接使用fopen像打开txt文件打开,然后利用explode分开就成了,生成也一样直接使用a,b,c,e保存成csv格式就KO,但php还提供了fputcsv函数对csv文件操作,下面我来介绍介绍
在php中读取操作csv文件的方法有很多,最简单的可以直接使用fopen像打开txt文件打开,然后利用explode分开就成了,生成也一样直接使用a,b,c,e保存成csv格式就KO,但php还提供了fputcsv函数对csv文件操作,下面我来介绍介绍.

1.生成CVS,fputcsv()将行格式化为 CSV 并写入文件指针,代码如下:

<?php 
$list = array ( 
    'aaa,bbb,ccc,dddd', 
    '11,22,33', 
    '"php","java"' 
); 
$fp = fopen('file.csv', 'w'); 
foreach ($list as $line) { 
    fputcsv($fp, explode(',', $line)); 

fclose($fp); 
?> 
小提示,如果你csv中有中文我们需要注意一下中文问题,否则中文乱码就会和你在一起玩哦,下面给了一个实例解决中文乱码,代码如下:

<?php 
/** by www.Cuoxin.com */ 
$row = 1; 
$handle = fopen("file.csv","r"); 
//fgetcsv() 解析读入的行并找出 CSV格式的字段然后返回一个包含这些字段的数组。  
while ($data = fgetcsv($handle, 1000, ",")) { 
//开源代码Cuoxin.com 
    $num = count($data); 
    echo "<p> $num fields in line $row: <br>n"; 
    $row++; 
    for ($c=0; $c < $num; $c++) { 
  //注意中文乱码问题 
  $data[$c]=iconv("gbk", "utf-8//IGNORE",$data[$c]);   
        echo $data[$c] . "<br>n"; 
    } 

fclose($handle); 
?> 
读取csv文件的某一行数据,代码如下:

<?php 
function get_file_line( $file_name, $line ){ 
$n = 0; 
$handle = fopen($file_name,'r'); 
if ($handle) { 
while (!feof($handle)) { 
++$n; 
$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); 
?> 
读取csv文件制定行数,行区间,代码如下:

<?php 
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); 

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."<br>"; 

?>

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章