国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php實現的操作excel類詳解

2024-05-04 23:42:18
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了php實現的操作excel類,較為詳細的分析說明了PHP操作excel的具體技巧,包括PHP針對excel的創建、打開、讀取、修改等,需要的朋友可以參考下
 

本文實例講述了php實現的操作excel類。分享給大家供大家參考,具體如下:

<?phpclass Excel{  static $instance=null;  private $excel=null;  private $workbook=null;  private $workbookadd=null;  private $worksheet=null;  private $worksheetadd=null;  private $sheetnum=1;  private $cells=array();  private $fields=array();  private $maxrows;  private $maxcols;  private $filename;  //構造函數  private function Excel()  {    $this->excel = new COM("Excel.Application") or die("Did Not Connect");  }  //類入口  public static function getInstance()  {    if(null == self::$instance)    {      self::$instance = new Excel();    }    return self::$instance;  }  //設置文件地址  public function setFile($filename)  {    return $this->filename=$filename;  }  //打開文件  public function Open()  {    $this->workbook=$this->excel->WorkBooks->Open($this->filename);  }  //設置Sheet  public function setSheet($num=1)  {    if($num>0)    {      $this->sheetnum=$num;      $this->worksheet=$this->excel->WorkSheets[$this->sheetnum];      $this->maxcols=$this->maxCols();      $this->maxrows=$this->maxRows();      $this->getCells();    }  }  //取得表所有值并寫進數組  private function getCells()  {    for($i=1;$i<$this->maxcols;$i++)    {      for($j=2;$j<$this->maxrows;$j++)      {        $this->cells[$this->worksheet->Cells(1,$i)->value][]=(string)$this->worksheet->Cells($j,$i)->value;      }    }    return $this->cells;  }  //返回表格內容數組  public function getAllData()  {    return $this->cells;  }  //返回制定單元格內容  public function Cell($row,$col)  {    return $this->worksheet->Cells($row,$col)->Value;  }  //取得表格字段名數組  public function getFields()  {    for($i=1;$i<$this->maxcols;$i++)    {      $this->fields[]=$this->worksheet->Cells(1,$i)->value;    }    return $this->fields;  }  //修改制定單元格內容  public function editCell($row,$col,$value)  {    if($this->workbook==null || $this->worksheet==null)    {      echo "Error:Did Not Connect!";    }else{      $this->worksheet->Cells($row,$col)->Value=$value;      $this->workbook->Save();    }  }  //修改一行數據  public function editOneRow($row,$arr)  {    if($this->workbook==null || $this->worksheet==null || $row>=2)    {      echo "Error:Did Not Connect!";    }else{      if(count($arr)==$this->maxcols-1)      {        $i=1;        foreach($arr as $val)        {          $this->worksheet->Cells($row,$i)->Value=$val;          $i++;        }        $this->workbook->Save();      }    }  }  //取得總列數  private function maxCols()  {    $i=1;    while(true)    {      if(0==$this->worksheet->Cells(1,$i))      {        return $i;        break;      }      $i++;    }  }  //取得總行數  private function maxRows()  {    $i=1;    while(true)    {      if(0==$this->worksheet->Cells($i,1))      {        return $i;        break;      }      $i++;    }  }  //讀取制定行數據  public function getOneRow($row=2)  {    if($row>=2)    {      for($i=1;$i<$this->maxcols;$i++)      {        $arr[]=$this->worksheet->Cells($row,$i)->Value;      }      return $arr;    }  }  //關閉對象  public function Close()  {    $this->excel->WorkBooks->Close();    $this->excel=null;    $this->workbook=null;    $this->worksheet=null;    self::$instance=null;  }};/*$excel = new COM("Excel.Application");$workbook = $excel->WorkBooks->Open('D://Apache2//htdocs//wwwroot//MyExcel.xls');$worksheet = $excel->WorkSheets(1);echo $worksheet->Cells(2,6)->Value;$excel->WorkBooks->Close();*/$excel=Excel::getInstance();$excel->setFile("D://kaka.xls");$excel->Open();$excel->setSheet();for($i=1;$i<16;$i++ ){  $arr[]=$i;}//$excel->editOneRow(2,$arr);//print_r($excel->getAllData());    $str=$excel->getAllData();    include_once('mail.class.php');    $smtpserver="smtp.yeah.net";   $smtpserverport=25;   $smtpuseremail="yanqihu58@yeah.net";   $smtpemailto="yanqihu@139.com";   $smtpuser="yanqihu58";   $smtppwd="123456789";    $mailtype="HTML";    $smtp=new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppwd);    $message="你好";   //$message.="首頁連接地址為:".$this->link_url."<br>";   //$message.="電子郵箱為:".$this->link_email."<br>";   //$message.="商務聯系QQ:".$this->link_qq."<br>";   //$message.="商務電話QQ:".$this->link_tel."<br>";   //$message.="聯系人:".$this->link_people."<br>";    $smtp->debug=false;    foreach($str['email'] as $key=>$value){      $smtpemailto=$value;      @$smtp->sendmail($smtpemailto,$smtpuseremail,$mailsubject,$message,$mailtype);      exit;    }    //exit;$excel->Close();?>

更多關于PHP操作Excel相關內容感興趣的讀者可查看本站專題:《php操作office文檔技巧總結(包括word,excel,access,ppt)

希望本文所述對大家PHP程序設計有所幫助。



注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 金山区| 临潭县| 高碑店市| 乐昌市| 吉安市| 沙洋县| 牙克石市| 东台市| 隆化县| 桂林市| 定兴县| 临城县| 娄烦县| 中西区| 临洮县| 理塘县| 临清市| 长乐市| 永清县| 金溪县| 遂川县| 金堂县| 阿荣旗| 当涂县| 甘德县| 克东县| 布尔津县| 饶平县| 噶尔县| 天柱县| 盐山县| 同心县| 大姚县| 西充县| 商水县| 翼城县| 修武县| 枣强县| 台南市| 永靖县| 普安县|