当前位置:首页 » 文件管理 » php上传csv

php上传csv

发布时间: 2023-06-08 08:04:54

A. php 写入数据到csv中,不覆盖原有数据,以新增行插入如何实现

这个跟fputcsv无关,而主要的关键在于你打开文件的模式,你需要使用 a 或是 a+ 模式打开文件。

'a' 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
'a+' 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。

$fp = fopen('file.csv', 'a+');

foreach($stu as $data);
{
fputcsv($fp,$data); //每次写入一组数据到csv文件中的一行
}

B. php导入csv文件输出是乱码,怎么解决

//这是我前几天回答过的一个问题下面以读取淘宝csv文件为例
if($result){//如果上传成功了,这是文件路径
if(!($handle=fopen_utf8($result,"r"))===FALSE){//调取下边函数fopen_utf8;
$errorArr=array();
$i=0;
while(($cols=fgetcsv($handle,1000," "))!==FALSE){
++$i;
if($i<4)continue;
$taobaolmsx=$cols[21];//宝贝属性;
$taobaoxxsx=$cols[30];//销售属性;
$goodsBn=$cols[33];//商家编码;

}
fclose($handle);
}

unlink($result);
}else{
echo'fileuploaderror';exit;
}

/*读取csv文件用*/
functionfopen_utf8($filename){
$encoding='';
$handle=fopen($filename,'r');
$bom=fread($handle,2);
rewind($handle);

if($bom===chr(0xff).chr(0xfe)||$bom===chr(0xfe).chr(0xff)){
//UTF16ByteOrderMarkpresent
$encoding='UTF-16';
}else{
$file_sample=fread($handle,1000)+'e';//readfirst1000bytes
//+eisaworkaroundformb_stringbug
rewind($handle);

$encoding=mb_detect_encoding($file_sample,'UTF-8,UTF-7,ASCII,EUC-JP,SJIS,eucJP-win,SJIS-win,JIS,ISO-2022-JP');
}
if($encoding){
stream_filter_append($handle,'convert.iconv.'.$encoding.'/UTF-8');
}
return($handle);
}

C. php上传文件是,判断是否csv文件的文件类型怎么写

$_FILES接收到文件信息是个数组。

其中$_FILES['myFile']['name']客户端文件的原名称,

您用‘.’来分割$_FILES['myFile']['name']分成一个索引数组,这个数组的最后一个值就是文件的扩展名。

或者你从最后一个“.”位置截取$_FILES['myFile']['name'],截取到最后。得到的结果也是文件的扩展名;

$_FILES['myFile']['type']得到的是文件的 MIME类型,这个并不能很好的反映文件的扩展名,

例如:

MIME类型为“text/html”,这个类型对应.html .htm .stm三种文件扩展名

MIME类型为“text/plain”,对应的是.c .txt .h .bas四种文件扩展名


D. php中如何导入导出CSV格式的文件

  1. php导入CSV文件:
    $line_number = 0;
    $handle = fopen("1.xls","r");
    while ($data = fgetcsv ($handle, 100000, ",")) {
    if($line_number == 0){
    $line_number++;
    continue;
    }
    //z这样就可以去掉表头的那一行
    for ($i = 0; $i < count($data); $i++) {
    $zian = $data[$i];
    }
    }



2.php导出CSV文件



header( "Cache-Control: public" );
header( "Pragma: public" );
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=txxx.csv");
header('Content-Type:APPLICATION/OCTET-STREAM');
ob_start();
$header_str = iconv("utf-8",'gbk',"信息id,标题,名称,电话,QQ,Email,内容,时间 ");
$file_str="";
$mysqli= new mysqli('localhost','root','','test');
if (mysqli_connect_errno()) {
printf("Connect failed: %s ", mysqli_connect_error());
exit();
}
$sql='select * from messages';
$mysqli->query("set names utf8 ;");
$result=$mysqli->query($sql);
if($result){
while ($row = mysqli_fetch_assoc($result)){
$file_str.= $row['id'].','.$row['title'].','.$row['name'].','."'{$row['telephone']}'".','.$row['qq'].','.$row['email'].','.str_ireplace(',',',',$row['content']).','.$row['retime']." ";
}
}else{
echo "nonono!!!";
}
$file_str= iconv("utf-8",'gbk',$file_str);
ob_end_clean();
echo $header_str;
echo $file_str;
?>

E. 数据库怎么上传的

直接把SQL复制,在新数据库运行

F. php中如何导入导出CSV格式的文件

其实你可以用
phpmyadmin
实现导入导出,不过导入的时候字段要和数据表的字段一一对应,参考资料里面的直接用PHP读取excel的,可能也会对你有帮助!

热点内容
php给文本框赋值 发布:2024-05-06 03:21:24 浏览:25
androidjsonkey 发布:2024-05-06 03:07:31 浏览:730
python主线程子线程 发布:2024-05-06 03:07:20 浏览:763
android系统截屏 发布:2024-05-06 02:57:51 浏览:776
android居左 发布:2024-05-06 02:40:26 浏览:45
网页设置的密码如何删除 发布:2024-05-06 02:20:30 浏览:926
如何查看snmp配置信息 发布:2024-05-06 02:19:48 浏览:489
预科编程 发布:2024-05-06 02:19:42 浏览:140
压缩比英文 发布:2024-05-06 01:56:35 浏览:173
数字php 发布:2024-05-06 01:53:10 浏览:743