<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. php語言

    php操作excel文件的方法小結

    時間:2025-04-20 18:08:03 php語言 我要投稿
    • 相關推薦

    php操作excel文件的方法小結

      php操作excel文件的方法有哪些?就跟隨百分網小編一起去了解下吧,想了解更多相關信息請持續關注我們應屆畢業生考試網!

      一、php,不用COM,生成excel文件

      復制代碼 代碼如下:

      <?

      header("Content-type:application/vnd.ms-excel");

      header("Content-Disposition:filename=test.xls");

      echo "test1t";

      echo "test2tn";

      echo "test1t";

      echo "test2tn";

      echo "test1t";

      echo "test2tn";

      echo "test1t";

      echo "test2tn";

      echo "test1t";

      echo "test2tn";

      echo "test1t";

      echo "test2tn";

      ?>

      在php環境運行上面的代碼,大家就可以看到瀏覽器詢問用戶是否下載excel文檔,點擊保存,硬盤上就多了一個excel的文件,使用excel打開就會看到最終的結果,怎么樣不錯吧。

      其實在做真正的應用的時候,大家可以將數據從數據庫中取出,然后按照每一列數據結束后加t,每一行數據結束后加n的方法echo出來,在php的開頭用header("Content-type:application/vnd.ms-excel");表示輸出的是excel文件,用header("Content-Disposition:filename=test.xls");表示輸出的文件名為text.xls。這樣就ok了。

      我們更可以修改header讓他輸出更多格式的文件,這樣php在處理各種類型文件方面就更加方便了.

      二、用PHP將mysql數據表轉換為excel文件格式

      復制代碼 代碼如下:

      <?php

      $DB_Server = "localhost";

      $DB_Username = "mydowns";

      $DB_Password = "";

      $DB_DBName = "mydowns";

      $DB_TBLName = "user";

      $Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password)

      or die("Couldn@#t connect.");

      $Db = @mysql_select_db($DB_DBName, $Connect)

      or die("Couldn@#t select database.");

      $file_type = "vnd.ms-excel";

      $file_ending = "xls";

      header("Content-Type: application/$file_type");

      header("Content-Disposition: attachment; filename=mydowns.$file_ending");

      header("Pragma: no-cache");

      header("Expires: 0");

      $now_date = date(@#Y-m-d H:i@#);

      $title = "數據庫名:$DB_DBName,數據表:$DB_TBLName,備份日期:$now_date";

      $sql = "Select * from $DB_TBLName";

      $ALT_Db = @mysql_select_db($DB_DBName, $Connect)

      or die("Couldn@#t select database");

      $result = @mysql_query($sql,$Connect)

      or die(mysql_error());

      echo("$titlen");

      $sep = "t";

      for ($i = 0; $i < mysql_num_fields($result); $i++) {

      echo mysql_field_name($result,$i) . "t";

      }

      print("n");

      $i = 0;

      while($row = mysql_fetch_row($result))

      {

      $schema_insert = "";

      for($j=0; $j<mysql_num_fields($result);$j++)

      {

      if(!isset($row[$j]))

      $schema_insert .= "NULL".$sep;

      elseif ($row[$j] != "")

      $schema_insert .= "$row[$j]".$sep;

      else

      $schema_insert .= "".$sep;

      }

      $schema_insert = str_replace($sep."$", "", $schema_insert);

      $schema_insert .= "t";

      print(trim($schema_insert));

      print "n";

      $i++;

      }

      return (true);

      ?>

      三、PHP操作excel的一個例子(用COM對象生成excel)

      這是對于那些只喜歡簡單處理一下excel朋友來說的

      復制代碼 代碼如下:

      <?php

      //定義一個excel文件

      $workbook = "C:/My Documents/test.xls";

      $sheet = "Sheet1";

      //生成一個com對象$ex

      $ex = new COM("Excel.sheet") or Die ("連不上!!!");

      //打開一個excel文件

      $book = $ex->application->Workbooks->Open($workbook) or Die ("打不開!!!");

      $sheets = $book->Worksheets($sheet);

      $sheets->activate;

      //獲取一個單元格

      $cell = $sheets->Cells(5,5);

      $cell->activate;

      //給該單元格賦值

      $cell->value = 999;

      //保存為另一文件newtest.xls

      $ex->Application->ActiveWorkbook->SaveAs("newtest.xls");

      //關掉excel,如果想看效果,則注釋掉下面兩行,由用戶手動關掉excel

      $ex->Application->ActiveWorkbook->Close("False");

      unset ($ex);

      ?>

      四、php生成EXCEL的東東

      可以通過PHP來產生EXCEL檔。

      ----------------------------

      Excel Functions

      ----------------------------

      將下面的代碼存為excel.php ,然后在頁面中包括進來

      然后調用

      1. Call xlsBOF()

      2. 將一些內容寫入到xlswritenunber() 或者 xlswritelabel()中.

      3.然后調用 Call xlsEOF()

      也可以用 fwrite 函數直接寫到服務器上,而不是用echo 僅僅在瀏覽器上顯示。

      復制代碼 代碼如下:

      <?php

      // ----- begin of function library -----

      // Excel begin of file header

      function xlsBOF() {

      echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);

      return;

      }

      // Excel end of file footer

      function xlsEOF() {

      echo pack("ss", 0x0A, 0x00);

      return;

      }

      // Function to write a Number (double) into Row, Col

      function xlsWriteNumber($Row, $Col, $Value) {

      echo pack("sssss", 0x203, 14, $Row, $Col, 0x0);

      echo pack("d", $Value);

      return;

      }

      // Function to write a label (text) into Row, Col

      function xlsWriteLabel($Row, $Col, $Value ) {

      $L = strlen($Value);

      echo pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);

      echo $Value;

      return;

      }

      // ----- end of function library -----

      ?>

      //

      // To display the contents directly in a MIME compatible browser

      // add the following lines on TOP of your PHP file:

      <?php

      header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT");

      header ("Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT");

      header ("Cache-Control: no-cache, must-revalidate");

      header ("Pragma: no-cache");

      header (@#Content-type: application/x-msexcel@#);

      header ("Content-Disposition: attachment; filename=EmplList.xls" );

      header ("Content-Description: PHP/INTERBASE Generated Data" );

      //

      // the next lines demonstrate the generation of the Excel stream

      //

      xlsBOF(); // begin Excel stream

      xlsWriteLabel(0,0,"This is a label"); // write a label in A1, use for dates too

      xlsWriteNumber(0,1,9999); // write a number B1

      xlsEOF(); // close the stream

      ?> </p

    【php操作excel文件的方法小結】相關文章:

    PHP文件與目錄操作的方法11-16

    PHP文件怎么操作09-03

    php文件操作函數解釋11-07

    PHP常用的文件操作函數10-17

    php中目錄文件操作詳談09-20

    PHP基礎學習之文件操作09-23

    PHP文件注釋標記及規范小結08-09

    php讀取文件內容的方法09-14

    PHP讀取文件的正確方法09-02

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人