php实现的操作excel类详解
网络编程 2021-07-05 09:10www.168986.cn编程入门
这篇文章主要介绍了php实现的操作excel类,较为详细的分析说明了PHP操作excel的具体技巧,包括PHP针对excel的创建、打开、读取、修改等,需要的朋友可以参考下
本文实例讲述了php实现的操作excel类。分享给大家供大家参考,具体如下
<?php class 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//root//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."; $smtpserverport=25; $smtpuseremail="yanqihu58@yeah."; $smtpemailto="yanqihu@139."; $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程序设计有所帮助。
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程