phpexcel格式
⑴ php怎么读取excel 文件数据并输出
PHPExcel
PHPExcel是用来操作Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言。可以使用它来读取、写入不同格式的电子表格,如 Excel (BIFF) .xls, Excel 2007 (OfficeOpenXML) .xlsx, CSV, Libre/OpenOffice Calc .ods, Gnumeric, PDF, HTML等等。
PHP读取示例代码
//获取上传的excel临时文件
$path=$_FILES["file"]["tmp_name"];
//将临时文件移动当前目录,可自定义存储位置
move_uploaded_file($_FILES["file"]["tmp_name"],$_FILES["file"]["name"]);
//将获取在服务器中的Excel文件,此处为上传文件名
$path=$_FILES["file"]["name"];
//调用readExcel函数返回一个
二维数组
$exceArray=readExcel($path);
//创建一个读取
excel函数
functionreadExcel($path){
//引入PHPExcel类库
include'Classes/PHPExcel.php';
include'Classes/PHPExcel/IOFactory.php';
$type='Excel5';//设置为Excel5代表支持2003或以下版本,
Excel2007代表2007版
$xlsReader=PHPExcel_IOFactory::createReader($type);
$xlsReader->setReadDataOnly(true);
$xlsReader->setLoadSheetsOnly(true);
$Sheets=$xlsReader->load($path);
//开始读取上传到服务器中的Excel文件,返回一个
二维数组
$dataArray=$Sheets->getSheet(0)->
toArray();
return$dataArray;
}
⑵ phpexcel怎么设置单元格为文本格式
$objPHPExcel->getActiveSheet()->setCellValueExplicit('B'.$j,$result[1],PHPExcel_Cell_DataType::TYPE_STRING);
$objPHPExcel->getActiveSheet()->getStyle('B'.$j)->getNumberFormat()->setFormatCode("@");
补充:phpexcel是用来操作Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言。可以使用它来读取、写入不同格式的电子表格
⑶ php通过finfo判断excel文件是什么格式
excel 93-2003后缀为 .xls 的 文件格式是 application/vnd.ms-excel
excel2007格式后缀是 .xlsx 的文件格式是application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
php上传文件,可以通过内置的系统函数$_FILES 获取文件的信息。
$_FILES数组内容如下: (其中upfile为获取的表单名称)
$_FILES['upfile']['name'] 客户端文件的原名称。
$_FILES['upfile']['type'] 文件的 MIME 类型,需要浏览器提供该信息的支持,例如"image/gif"。
$_FILES['upfile']['size'] 已上传文件的大小,单位为字节。
$_FILES['upfile']['tmp_name'] 文件被上传后在服务端储存的临时文件名
<?php
if(isset($_POST['sub'])){
echo"文件名:".$_FILES['upfile']['name']."<br>";
echo"文件类型:".$_FILES['upfile']['type'];
}
?>
<formenctype="multipart/form-data"method="post"action="f.php">
<inputtype="file"name="upfile"/>
<inputtype="submit"name="sub"value="上传"/>
</form>
上传 。xls文件 返回的信息为
文件名:导入收藏证书模板.xls
文件类型:application/vnd.ms-excel
⑷ PHPExcel怎么设置某列的格式为数值
你这个是文本格式不多的话先改成数值格式,再输入一次就可以了如量大的话可以用多种方法,以下两种方法最好在两种选种这列后数据下,分列-一直下一步,到第三步选择“列数据格式为“常规”就可以了方法二,在某空白单元格输入1,复制,选择这一列文本型的数据,右键-选择性贴粘-乘-确认,就可以了
⑸ PHPExcel如何设置某列的格式为数值
设置单元格的值并指定其数据类型
$objPHPExcel->getActiveSheet()->setCellValueExplicit("D1","1234567890",PHPExcel_Cell_DataType::TYPE_NUMERIC);
其他设置
setCellValueByColumnAndRow():通过列索引和行索引设置单元格的值,返回类型同上
setCellValueExplicit():设置单元格的值,并显示指定数据类型,返回工作表对象
():通过列和行索引设置单元格值
setTitle():设置工作表标题
⑹ 怎么解决从php导出的excel文件打开时弹出文件格式不一致问题(还有无边框显示问题,见“问题补充”)
没有你的数据,做了个测试,可以导出,但是还会报你说的错误,但是不影响内容,应该是导出的文件并不是excel格式的,只是命名成excel文件而已吧。下面代码可以解决边框问题:
<?php
$filename="excel.xls";//定义一个excel文件
header("Content-Type: application/vnd.ms-execl");
header("Content-Type: application/vnd.ms-excel; charset=gb2312");
header("Content-Disposition: attachment; filename=$filename");
header("Pragma: no-cache");
header("Expires: 0");
$testArr = array("test1"=>array('test','test','test'),"test2"=>array('test2','test2','test2'));
foreach($testArr as $val){
foreach( $val as $v ){
echo $v."\t";
}
echo "\n";
}
?>
⑺ phpexcel读取时的格式问题,希望各位大神大虾们帮帮小猿我。。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class test
{
public static void main(String[] args) throws IOException
{
System.out.print("输入圆盘的个数:");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String str=br.readLine();
int m=Integer.parseInt(str);
System.out.println("移动步骤:");
hanoi(m,'A','B','C');
}
⑻ 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
⑼ phpexcel 支持什么版本的 excel
require_once 'PHPExcel.php';
////require_once'PHPExcel/Writer/Excel5.php'; // 用于其他低版本xls
// or
////require_once'PHPExcel/Writer/Excel2007.php'; // 用于excel-2007 格式
// 创建一个处理对象实例
$objExcel = new PHPExcel();
// 创建文件格式写入对象实例, uncomment
////$objWriter = newPHPExcel_Writer_Excel5($objExcel); // 用于其他版本格式
// or
////$objWriter = newPHPExcel_Writer_Excel2007($objExcel); // 用于2007 格式
$objProps = $objExcel->getProperties ();
//设置创建者
$objProps->setCreator ( 'XuLulu');
//设置最后修改者
$objProps->setLastModifiedBy("XuLulu");
//描述
$objProps->setDescription("摩比班级");
//设置标题
$objProps->setTitle ( '管理器' );
//设置题目
$objProps->setSubject("OfficeXLS Test Document, Demo");
//设置关键字
$objProps->setKeywords ( '管理器' );
//设置分类
$objProps->setCategory ( "Test");
//工作表设置
$objExcel->setActiveSheetIndex( 0 );
$objActSheet = $objExcel->getActiveSheet ();
//单元格赋值 例:
$objActSheet->setCellValue ( 'A1', 'ID');
$objActSheet->setCellValue ( 'B1', 'HashCode');
$objActSheet->setCellValue ( 'C1', 'ModelName');
$objActSheet->setCellValue ( 'D1', 'IndexName');