导航:首页 > 编程语言 > php行excel

php行excel

发布时间:2023-05-19 04:57:39

㈠ 在php中操作Excel实例代码

复制代码
代码如下:
<?php
//指定页面编码,防止出现中文乱码的情形
header('Content-type:
text/html;
charset=gb2312');
//启动Excel
$ms_excel=new
COM("excel.application")
or
die("不能打开Excel应用程序");
//在网页中显示当前的Excel版本
echo
"Excel版本:{$ms_excel->Version}\n";
//新建一个工作簿
$ms_excel->Application->Workbooks->Add()
or
die("不能添加新工作簿");
//在工作簿的工作表Sheet1中单元格A1中输入文本
$ms_excel->Worksheets("Sheet1")->Range("A1")->Value="测试";
//保存工作簿,如果没有指定路径,则默认保存在我的文档中
$ms_excel->Workbooks(1)->SaveAs("php_excel_test.xls");
//关闭工作簿
$ms_excel->Quit();
//清空对象
$ms_excel=null;
?>
在htdocs文件夹中将该文件保存为“excelsample.php”。打开浏览器,在地址栏中输入:
http://localhost/excelsample.php
此时,将会在页面中显示当前的Excel版本,同时创建名为php_excel_test.xls的工作簿并在工作表Sheet1单元格A1中输入“测试”。
打开工作簿php_excel_test.xls,在单元格A1中将会看到已经输入了“测试”。
注:为防止出现乱码,在代码开始设置了编码格式,同时在保存文件时选择保存为gb2312格式。

㈡ 如何在php页面嵌入EXCEL对多条数据进行修改.(200分)

分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:

将数据库的数据查询到嵌入在PHP中的EXCEL里面.实现多条纪录的修改.

数据库里面有几万条数据,每天要修改几百条,一漏芦条一条修改很麻烦,怎样能够,实现上面说的这种功能,然后可以批量修改.

解析:

可以选择一些相关的,然后统一批量改

SQL Server 中直接可以把excel文件加载进来当作表处理。

使用Sql脚本怎么处理都可以了。

其他数据库,那还有写处理excel的代码

你的数据在EXCEL里面,需要用PHP程序去修改它,因为你的机器上有WEB,你希望远程操作,对吗?

其实不难,你在ODBC里面建立一个数据源,指向你的EXCEL文件,PHP写程序用SQL操作ODBC数据源是很简单的,例子:

<?PHP

$id=odbc_connect("ODBC数据源名称","用户名","密码");

if ($id!=0){

$max_display_rec=500;

$query_str="任意的SQL语句";

$qu=odbc_exec($id,$query_str);

if ($qu) echo "执行 $query_str 成功!";

else echo "执行 $query_str 失败!"返庆带;

} else echo '数据库连接失败!

觉得你可以做这样一个界面:

一个列表,每行前有一个复选框,让用户选中要修改的记录

点击提交后,将用户所选的内差谨容以文本框的形势显示,如一页不够,可分页。

当用户修改结束后,统一保存

㈢ 基于php中使用excel的简单介绍

在工作中需要处理多语言的翻译问题,翻译都是写在excel表格里面。为了处理方便我就保留中文和英文两列。
这样需要将这些数据从excel中取出来,然乎保存在excel的数组中,通过使用循环数组将相应的数据放入到数据库中。
所以工作的第一步就是要将数据从excel中取出来。这里我使用到了一个开源php处理excel类:phpexcel.
该项目的详细信息
http://phpexcel.codeplex.com/

我目前使用的是phpexcel1.7.3版本,
压缩后里面有一个PHPExcel和PHPExcel.php文件。
我们主要使用那个PHP文件。见下图文件目录结构
这个版本据说是可以支持excel2007,但是我使用2007编辑的xlsx是无法获得该库的支持。于是乎我就将它转化为2003。感觉支持地很好。
下面介绍一下具体的使用:
复制代码
代码如下:
require_once('./phpexcel1.7.3/PHPExcel.php');
$php_excel_obj
=
new
PHPExcel();
$php_reader
=
newPHPExcel_Reader_Excel2007();
if(!$php_reader->canRead($file_name)){

$php_reader=
new
PHPExcel_Reader_Excel5();

if(!$php_reader->canRead($file_name)){

echo'NO
Excel!'

}
}
$php_excel_obj
=
$php_reader->load($file_name);
$current_sheet
=$php_excel_obj->getSheet(0);
上面的主要功能是初始化相关的excel类,并装载excel第一个sheet
复制代码
代码如下:
$all_column
=$current_sheet->getHighestColumn();
$all_row
=$current_sheet->getHighestRow();
以上分别获得该表格的最大列值(字母表示如:‘G'),和最大的行数(数值表示)
下面将使用循环来讲excel里面的数据读到excel中:
复制代码
代码如下:
$all_arr
=
array();
$c_arr
=
array();
//字符对照表
for($r_i
=
1;
$r_i<=$all_row;
$r_i++){

$c_arr=
array();

for($c_i=
'A'
$c_i<=
'B'
$c_i++){

$adr=
$c_i
.
$r_i;

$value=
$current_sheet->getCell($adr)->getValue();

if($c_i==
'A'
&&
empty($value)
)
break;

if(is_object($value))
$value=
$value->__toString();

$c_arr[$c_i]=
$value;

}

$c_arr&&
$all_arr[]
=
$c_arr;
}
下面简单地介绍一下phpexcel的写操作,这个操作经常用于将数据库中的数据导入到excel中,便于展示和做成更美观的效果。
复制代码
代码如下:
require_once('./phpexcel1.7.3/PHPExcel.php');
$excel_obj
=
new
PHPExcel();
$objWriter
=
newPHPExcel_Writer_Excel5($excel_obj);
$excel_obj->setActiveSheetIndex(0);
$act_sheet_obj=$excel_obj->getActiveSheet();
$act_sheet_obj->setTitle('sheet');
$act_sheet_obj->setCellValue('A1',
'字符串内容');
$act_sheet_obj->setCellValue('A2',
26);
$file_name
=
"output.xls";
$objWriter->save($file_name);
代码很简单,
首先初始化相关的excel写类,然后写入数据,最后保存为xls文件。
输出的效果见图

㈣ 请教PHP EXCEL如何获取行数

PHPExcel_IOFactory::createReader('Excel2007')->load('Excel文件名或路径')->getSheet(0)->getHighestRow();//2007以上版本Exel
PHPExcel_IOFactory::createReader('Excel5')->load('Excel文件名或路径')->getSheet(0)->getHighestRow();//2007以下版本Exel

㈤ php导出数据到excel 格式设置

$name = iconv("utf-8","gbk",'二级学院列表');;
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$name.xls");

//第三行的 name.xls这个xls可以自己改,不过大数据的导出建议使用专业的类,如phpexcel.

㈥ PHP如何导出Excel文件

昨天项目里有个新需求,客户希望把一些数据能导出成为Excel表格,刚开始用PHP原生输入Excel表格,发现效果不是很理想,于是找到一个比较着名的库:PHPExcel。下面是一个简单的demo,分享给大家,希望可以帮到有同样需求的朋友。

1.网络:phpexcel,结果如图所示,点击第一个结果;
PHP导出Excel,PHP输入Excel

2.进入官网后,找到右边的download按钮,下载,下载完成的是一个压缩文件,解压放到你的项目目录里,根据个人情况而定;
PHP导出Excel,PHP输入Excel
PHP导出Excel,PHP输入Excel

3.因为这里给大家做演示,所以建了一个测试文件,有点基础的都能明白是怎么回事,下面进入代码;
PHP导出Excel,PHP输入Excel

4.

//引入PHPExcel库文件(路径根据自己情况)

include './phpexcel/Classes/PHPExcel.php';

//创建对象

$excel = new PHPExcel();

//Excel表格式,这里简略写了8列

$letter = array('A','B','C','D','E','F','F','G');

//表头数组

$tableheader = array('学号','姓名','性别','年龄','班级');

//填充表头信息

for($i = 0;$i < count($tableheader);$i++) {

$excel->getActiveSheet()->setCellValue("$letter[$i]1","$tableheader[$i]");

}

PHP导出Excel,PHP输入Excel

5.

//表格数组

$data = array(

array('1','小王','男','20','100'),

array('2','小李','男','20','101'),

array('3','小张','女','20','102'),

array('4','小赵','女','20','103')

);

//填充表格信息

for ($i = 2;$i <= count($data) + 1;$i++) {

$j = 0;

foreach ($data[$i - 2] as $key=>$value) {

$excel->getActiveSheet()->setCellValue("$letter[$j]$i","$value");

$j++;

}

}

PHP导出Excel,PHP输入Excel

6.

//创建Excel输入对象

$write = new PHPExcel_Writer_Excel5($excel);

header("Pragma: public");

header("Expires: 0");

header("Cache-Control:must-revalidate, post-check=0, pre-check=0");

header("Content-Type:application/force-download");

header("Content-Type:application/vnd.ms-execl");

header("Content-Type:application/octet-stream");

header("Content-Type:application/download");;

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

header("Content-Transfer-Encoding:binary");

$write->save('php://output');

PHP导出Excel,PHP输入Excel

7.打开页面,刷新的时候会弹出对话框,让你选择文件保存路径和文件名称,我直接放在了桌面上,如图所示;
PHP导出Excel,PHP输入Excel
PHP导出Excel,PHP输入Excel

8.打开表格后,数据和格式跟代码中的一致,说明PHP导出的Excel是正确的。如果出现错误,检查一下你的表格数组和数据数组吧。
PHP导出Excel,PHP输入Excel

㈦ php怎么导出大量数据的Excel

PHP从数据库分多次读取100万行记录,和分多次将100万行写入文本文件都没问题
Excel可以支持100万行记录,Excel 2003最大支持65536行,从2007版开始支持104万行了,目前2007的盗版应该比较普及了-_-! 问清楚你的客户是什么版本。
你要导出excel的理由是非常充分和正乱如确的,应该继续坚持。业务人员最熟悉的就是Excel,实在不熟悉现学现用也比别的快。只是要注意,当数据量达到10万行这个级别时,Excel的公式填充将会非常非常慢,如果再有LOOKUP()公式,基本上十分钟内处理世陪仿CPU满载进程管理器杀不掉的状态,这时候其实xampp + phpmyadmin是一个易用性和性能都最平衡的选择
PHPExcel输出的是Excel XML格式,有个XML头和尾,中间是数据Body,需要将100万行都赋值给一个数组才搜纤可以调用PHPExcel->write(),这容易导致PHP执行超时或者内存超限,你不妨调整一下php.ini配置,把超时时间和内存限制都改到很大
如果是输出csv格式,那就太简单了,你的问题可能是没给字段内容加引号,加上引号再调用fputcsv试试?其实fputcsv做的事情特别简单,你甚至可以不管它,自己把CSV文件的每一行拼接好了之后用file_put_contents写入如果你对php有兴趣的话,可以向我一样在后盾人平台多看看自己学习学习,时间长了自己就慢慢明白了,希望能帮到你,给个采纳吧(ಡωಡ)hiahiahia 谢谢

㈧ php怎样读取excel表格内容

常用的用PHP读取EXCEL的方法有以下三种,各自有各自的优缺点。个人推荐用第三种方法,因为它可以跨平台使用。x0dx0ax0dx0a1. 以.csv格式读取x0dx0ax0dx0a将.xls转换成.csv的文本格式,然后再用PHP分析这个文件,和PHP分析文本没有什么区别。x0dx0ax0dx0a优点:跨平台,效率比较高、可以读写。x0dx0ax0dx0a缺点:只能直接使用.csv的文件,如果经常接受.xls二进制文件的话需要手工转换,不能自动化。一个文件只有一个SHEET。x0dx0ax0dx0aPHP有自带的分析.csv函数:fgetcsvx0dx0ax0dx0aarray fgetcsv ( int $handle [, int $length [, string $delimiter [, string $enclosure]]] )x0dx0ax0dx0ahandle 一个由 fopen()、popen() 或 fsockopen() 产生的有效文件指针。x0dx0ax0dx0alength (可选)必须大于 CVS 文件内最长的一行。在 PHP 5 中该参数是可选的穗亮烂。如果忽略(在 PHP 5.0.4 以后的版本中键顷设为 0)该参数的话,那么长度就没有限制,不过可能会影响执行效率。x0dx0ax0dx0adelimiter (可选)设置字段分界符(只允许一个字符),默认值为逗号。x0dx0ax0dx0aenclosure (可选)设置字段环绕符(只允许一个字符),默认值为双引号。该参数是在 PHP 4.3.0 中添加的。 和 fgets() 类似,只除了 fgetcsv() 解析读入的行并找出 CSV 格式的字段然后返回一个包含这些字段的数组。x0dx0ax0dx0afgetcsv() 出错时返回 FALSE,包括碰到文件结束时。x0dx0ax0dx0a注意: CSV 文件中的空行将被返回为一个包含有单个 null 字段的数组,不会被当成错误。x0dx0ax0dx0a当然也可以自己手动分析字符串。x0dx0ax0dx0a还可以利用fputcsv函数将行格式化为 CSV 并写入文件指针。x0dx0ax0dx0a2. ODBC链接数据源x0dx0ax0dx0a优点:支持多种格式,cvs, xls等。支持读写,使用标准SQL语言,和SQLSERVER、MYSQL数据库几乎完全一样。x0dx0ax0dx0a缺点:值支持windows服务器x0dx0ax0dx0a3. PHP自定义类x0dx0ax0dx0a优点:跨平台。某些类支持写操作。支持.xls二进制文件x0dx0ax0dx0a常用的类有phpExcelReader、PHPExcel。其中后者支持读写,但是需要php5.2以上版本。x0dx0ax0dx0aphpExcelReader是专门用来读取文件的。返回一个数组,包含表格的所有内容。x0dx0ax0dx0a该 class 使用的方法可以参考网站下载回来的压缩档猜漏中的 example.php。x0dx0ax0dx0a不过我下载回来的 (版本 2009-03-30),有两点要注意:x0dx0ax0dx0areader.php 中的下面这行要修改x0dx0ax0dx0a将 require_once ‘Spreadsheet/Excel/Reader/OLERead.php’;x0dx0ax0dx0a改为 require_once ‘oleread.inc’;x0dx0ax0dx0aexample.php 中x0dx0ax0dx0a修改 $data->setOutputEncoding(’CP1251′);x0dx0ax0dx0a为 $data->setOutputEncoding(’CP936′);x0dx0ax0dx0aexample2.php 中x0dx0ax0dx0a修改 nl2br(htmlentities($data->sheets[$sheet]['cells'][$row][$col]));x0dx0ax0dx0a为 $table_output[$sheet] .= nl2br(htmlspecialchars($data->sheets[$sheet]['cells'][$row][$col]));x0dx0ax0dx0a不然中文会有问题。x0dx0ax0dx0a繁体的话可以修改为CP950、日文是CP932,具体可参考codepage说明。x0dx0ax0dx0a修改 $data->read(’jxlrwtest.xls’) 为自己的 excel 文件名,zip 档中附的 jxlrwtest.xls 应该是坏了。

阅读全文

与php行excel相关的资料

热点内容
如何查看电脑系统服务器ip地址查询 浏览:389
把文件夹设锁 浏览:570
命令行语句 浏览:218
企友3e财务如何连接服务器 浏览:984
华为手机如何删除卸载app残留数据 浏览:543
rpm的命令作用 浏览:365
如何查看网站的服务器时间 浏览:850
编译局和人民出版社 浏览:652
java泛型extends 浏览:326
头条程序员教学 浏览:772
安卓合并什么意思 浏览:530
linux在光盘引导 浏览:537
imap服务器地址怎么查 浏览:654
作曲教程pdf 浏览:506
pr怎么压缩文件大小 浏览:863
查看oracle字符集命令 浏览:179
锂电池增加密度 浏览:661
linux用户密码忘记 浏览:242
gb压缩天然气 浏览:635
图片拼接不压缩app 浏览:670