導航:首頁 > 創造發明 > php創造csv

php創造csv

發布時間:2021-09-30 18:10:47

① 如何使用PHP導出csv和excel文件

把Excel文件導入mysql:
打開excel文件,可用phpExcel開源的類
或者:
先把excel文件另存為csv格式,最好是utf8編碼。
fgetcsv() — 從文件指針中讀入一行並解析 CSV 欄位,返回數組

② php 生成 csv文件

$filename="export_".date('Ymd').".csv";
header('Content-Type:application/vnd.ms-excel');
header('Content-Disposition:attachment;filename="'.$filename.'"');
header('Cache-Control:max-age=0');

//寫入你的查詢代碼

$fp=fopen('php://output','a');
$print_hea=array("姓名","年齡","性別");
fputcsv($fp,$print_hea);

//下面是你的查詢結果代碼,把結果循環在數組中後使用
fputcsv($fp,$print_hea_new);

③ php將csv中的數據建立成一個數據表

其實你把$sql列印出來看看也許就知道錯在哪兒了。

大概看了一下你的代碼,
先將csv中的每一行分割成數組,再連接到sql語句中,但是你貌似忘記加空格了,

例如
nom,VARCHAR,20,TRUE,PRIMARY,TRUE

按照你的代碼處理成sql語句就變成了(缺少空格)
nomVARCHAR20TRUEPRIMARYTRUE
正確情況應該是(逗號替換成空格,最後還要加上一個逗號)
nom VARCHAR 20 TRUE,PRIMARY TRUE,

④ php怎麼講字元串變成csv格式

PHPExcel完全可以滿足你的要求,給個簡單處理例子,具體的你還是看看PHPExcel的文檔:

$filename = "myexcel.xlsx";
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
$objPHPExcel = $objReader->load($filename);
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV');
$objWriter->save(str_replace('.xlsx', '.csv',$filename));

⑤ php導出csv,如下代碼為什麼不彈出提示保存或打開CSV文件


header ( "Content-type:application/vnd.ms-excel;charset=utf-8" );

⑥ php 寫入數據到csv中,不覆蓋原有數據,以新增行插入如何實現

這個跟fputcsv無關,而主要的關鍵在於你打開文件的模式,你需要使用 a 或是 a+ 模式打開文件。

'a' 寫入方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創建之。
'a+' 讀寫方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創建之。

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

foreach($stu as $data);
{
fputcsv($fp,$data); //每次寫入一組數據到csv文件中的一行
}

⑦ PHP生成CSV文件問題 麻煩各位高手幫忙看看

csv很簡單
數據以,分開
行用\n
存為.csv就行了
生成xls的話稍微復雜一點兒,下面是一個生成xls的類,你可以按照你的需要修改調用一下。
======================================
用PHP生成xls,csv格式文件的類
2008年09月23日 星期二 上午 09:56

fileOperation.php
****************************************************
class fileOperation {//基類
var $fileName='test';
var $extendName='csv';
var $mPath='./report/';
var $mFp;
function fileOperation() {

}
function openFile($mode='w'){
if(empty($this->fileName)){
$this->setTimeFileName();
}
if (empty($this->extendName)){
$this->setExtendName();
}

$fp=fopen($this->mPath.'/'.$this->fileName.'.'.$this->extendName,$mode);
if($fp){
$this->mFp=$fp;
}else{
return 0;
}
}
function closeFile(){
return fclose($this->mFp);
}
function setTimeFileName($type='Ymd'){
if(!empty($type)){
$this->fileName=$type;
}else{
$this->fileName=time();
}
}
function setExtendName($extend='txt'){
if(!empty($extend)){
$this->extendName=$extend;
}else{
$this->extendName='.csv';
}
}
function setPath($path='./'){
$this->mPath=$path;
}
}

xlsHelper.php
****************************************************
require_once 'fileOperation.php';
class xlsHelper extends fileOperation{//具體實現子類
var $mSpace = '';
var $mHead;
var $mBody='';

function addHeader($head=array()){
$this->mHead='<table width="500" border="1" align="center" cellpadding="5"><tr>';
if (is_array($head)){
foreach($head as $hd){
$this->mHead.='<th bgcolor="#A5A0DE">'.$hd.'</th>';
}
}
$this->mHead.='</tr>';
}
function addBodyData($body=array()){
if(is_array($body)){

for($i=0;$i<count($body);$i++){
$childBody=$body[$i];
$this->mBody.='<tr>';
$this->mSpace = '<td align="center">';
for($j=0;$j<count($childBody);$j++){
$this->mBody.=$this->mSpace.$childBody[$j].'</td>';
}
$this->mBody.="</tr>";
}

}
$this->mBody.='</table>';
}
function _construct(){

}
function writeCSVDate(){
return fwrite($this->mFp,$this->mHead.mb_convert_encoding($this->mBody,'sjis','sjis'));
}
function setSpace($type=','){
$this->mSpace=$type;
}
}

test.php
****************************************************
$xls=new xlsHelper();
$xls->fileName='xxx';//設置生成文件的文件名
$xls->extendName='xls';//文件擴展名
$xls->mPath='./';//文件保存路徑

$headerarr=array('姓名','年齡','郵箱');//頭部欄位名
$xls->addHeader($headerarr);

$datasarr=array(//注意:此處的二維數組一定要是數字索引
array('yht',20,'[email protected]'),
array('ktv009',23,'[email protected]'),
);
$xls->addBodyData($datasarr);

$xls->openFile('w');
if($xls->writeCSVDate()) echo "<script language='javascript'>生成文件成功</script>";
else echo ""<script language='javascript'>無法生成文件</script>";

⑧ 將PHP生成CSV文件2

發給你的程序里,這個已經做好了。

⑨ php 生成csv文件並提示保存

<?php
//文件名
$filename="test.csv";

//數據(具體的根據需要做處理,如果是從資料庫查詢,原理與此類似,只需設置好寫入格式和數據即可。
$data="測試csv";

//設置header
header("Content-type:text/csv");
header("Content-Disposition:attachment;filename=".$filename);
header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
header('Expires:0');header('Pragma:public');
echo$data;
?>

⑩ php 如何從數據里選擇所需要信息然後生成csv文件自動保存在指定的路徑(不提示保存,自動)

命令行模式下,或者web模式下保存的路徑在伺服器中,可以達到你的要求(有該路徑的許可權即可)

如果是在web模式下,不提示直接保存到訪客的電腦中的某個位置,是不可以的。

web模式保存到客戶端,只能通過下載,由用戶指定,或保存到默認的下載目錄。

以下是代碼示例:

$dsn='mysql:dbname=testdb;host=127.0.0.1';
$user='dbuser';
$password='dbpass';

//連接資料庫pdo
try{
$dbh=newPDO($dsn,$user,$password,array(PDO::MYSQL_ATTR_INIT_COMMAND=>"SETNAMES'UTF8'"));
}catch(PDOException$e){
echo'Connectionfailed:'.$e->getMessage();exit;
}

//讀取數據,具體sql你根據情況修改
$stat=$dbh->prepare('SELECT*FROM`table`WHERE`id`>0LIMIT100;');
$stat->execute();
$result=$stat->fetchAll(PDO::FETCH_ASSOC);

//創建csv文件並打開文件指針
$filepath='file.csv';
$fp=fopen($filepath,'w');

//寫入數據
foreach($resultas$i=>$row){
//寫入標題行
if($i==0){
fputcsv($fp,array_keys($row));
}
fputcsv($fp,$row);
}

//關閉文件指針
fclose($fp);

//把文件輸出到下載
$file=fopen($filepath,"r");//打開文件
$size=filesize($filepath);
Header("Content-type:application/octet-stream");
Header("Accept-Ranges:bytes");
Header("Accept-Length:".$size);
Header("Content-Disposition:attachment;filename=download.csv");
echofread($file,$size);
fclose($file);

相關知識點:

PHP: fputcsv

PHP:PDO

資料庫查詢的時候只返回列名,防止列出現重復,csv里會有重復的數據

閱讀全文

與php創造csv相關的資料

熱點內容
衛生室公共衛生服務考核標准 瀏覽:493
亞洲給水排水有版權嗎 瀏覽:397
湖北省醫療糾紛預防與處理辦法 瀏覽:230
星光創造營後勤在哪 瀏覽:581
北京辦理知識產權 瀏覽:177
交通銀行信用卡有效期是幾年 瀏覽:913
公司協議股權轉讓 瀏覽:531
啥叫擔保物權 瀏覽:60
馬鞍山到徐州的火車 瀏覽:703
羊年限定金克絲多少錢 瀏覽:573
公共基本衛生服務結核項目試題 瀏覽:896
寶雞市工商局電話號碼 瀏覽:81
基本公共衛生服務督導工作方案 瀏覽:454
信息化成果總結 瀏覽:948
債務糾紛律師費必須提供發票嗎 瀏覽:876
手機我的世界創造模式怎麼去天堂 瀏覽:716
專利代理人個人總結 瀏覽:312
工商局黨建工作述職報告 瀏覽:685
創造力閱讀理解答案 瀏覽:866
金華質監局和工商局合並 瀏覽:334