當前位置:首頁 » 文件管理 » 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的,可能也會對你有幫助!

熱點內容
c語言函數執行時間 發布:2023-10-01 17:10:39 瀏覽:314
java二維數組的遍歷 發布:2023-10-01 17:07:53 瀏覽:325
腳本精靈要怎麼用 發布:2023-10-01 17:07:04 瀏覽:874
寶馬x3與x4配置哪些不一樣 發布:2023-10-01 16:54:53 瀏覽:59
汽車編程收入 發布:2023-10-01 16:15:51 瀏覽:525
linuxpython腳本 發布:2023-10-01 16:15:43 瀏覽:634
pythoninvoke 發布:2023-10-01 16:03:26 瀏覽:390
色器編譯慢 發布:2023-10-01 15:50:17 瀏覽:354
互助平台源碼下載 發布:2023-10-01 15:50:15 瀏覽:564
安卓應用層和底層哪個貴 發布:2023-10-01 15:38:33 瀏覽:678