php实现的操作excel类详解,phpexcel类详解
本文实例讲述了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//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 excel类 phpExcel使用方法介绍
- thinkPHP导出csv文件及用表格输出excel的方法
- PHP使用PHPexcel导入导出数据的方法
- PHP导入导出Excel代码
- php导出中文内容excel文件类实例
- 用PHP生成excel文件到指定目录
- PHPExcel中的一些常用方法汇总
- php导入excel文件到mysql数据库的方法
- php生成excel列名超过26列大于Z时的解决方法
- Yii中使用PHPExcel导出Excel的方法
- ThinkPHP基于PHPExcel导入Excel文件的方法

要保护应用免受与会话相关的XSS攻击,需采取以下措施:1.设置HttpOnly和Secure标志保护会话cookie。2.对所有用户输入进行输出编码。3.实施内容安全策略(CSP)限制脚本来源。通过这些策略,可以有效防护会话相关的XSS攻击,确保用户数据安全。

优化PHP会话性能的方法包括:1.延迟会话启动,2.使用数据库存储会话,3.压缩会话数据,4.管理会话生命周期,5.实现会话共享。这些策略能显着提升应用在高并发环境下的效率。

thesession.gc_maxlifetimesettinginphpdeterminesthelifespanofsessiondata,setInSeconds.1)它'sconfiguredinphp.iniorviaini_set().2)abalanceIsiseededeedeedeedeedeedeedto to to avoidperformance andununununununexpectedLogOgouts.3)

在PHP中,可以使用session_name()函数配置会话名称。具体步骤如下:1.使用session_name()函数设置会话名称,例如session_name("my_session")。2.在设置会话名称后,调用session_start()启动会话。配置会话名称可以避免多应用间的会话数据冲突,并增强安全性,但需注意会话名称的唯一性、安全性、长度和设置时机。

会话ID应在登录时、敏感操作前和每30分钟定期重新生成。1.登录时重新生成会话ID可防会话固定攻击。2.敏感操作前重新生成提高安全性。3.定期重新生成降低长期利用风险,但需权衡用户体验。

在PHP中设置会话cookie参数可以通过session_set_cookie_params()函数实现。1)使用该函数设置参数,如过期时间、路径、域名、安全标志等;2)调用session_start()使参数生效;3)根据需求动态调整参数,如用户登录状态;4)注意设置secure和httponly标志以提升安全性。

在PHP中使用会话的主要目的是维护用户在不同页面之间的状态。1)会话通过session_start()函数启动,创建唯一会话ID并存储在用户cookie中。2)会话数据保存在服务器上,允许在不同请求间传递数据,如登录状态和购物车内容。

如何在子域名间共享会话?通过设置通用域名的会话cookie实现。1.在服务器端设置会话cookie的域为.example.com。2.选择合适的会话存储方式,如内存、数据库或分布式缓存。3.通过cookie传递会话ID,服务器根据ID检索和更新会话数据。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

禅工作室 13.0.1
功能强大的PHP集成开发环境

SublimeText3 英文版
推荐:为Win版本,支持代码提示!