> 백엔드 개발 > PHP 튜토리얼 > PHP로 엑셀을 내보낼 때 숫자가 과학적 표기법으로 바뀌는 문제 해결

PHP로 엑셀을 내보낼 때 숫자가 과학적 표기법으로 바뀌는 문제 해결

PHP中文网
풀어 주다: 2023-02-28 20:22:01
원래의
3965명이 탐색했습니다.

데이터를 Excel로 내보낼 때 숫자 형식이 올바르지 않은 경우는 일반적으로 두 가지입니다.

1. 엑셀 셀 설정 길이가 부족합니다

해결 방법:

//在excel.php文件中 
$objActSheet = $objPHPExcel->getActiveSheet(); 
// 设置 栏目名称 
$objActSheet->setCellValue("b1", "卡号"); 
// 设置列的宽度 
$objActSheet->getColumnDimension('b')->setWidth(20);//改变此处设置的长度数值
로그인 후 복사

2. Excel에서는 일반적으로 해당 필드를 텍스트로 설정하거나 공백을 추가하는 방법을 찾습니다.
해결책:

//添加数据处,主要是把要显示数据以chunk_split()函数处理以下,此函数的具体用法可以自己查看 
$objActSheet->setCellValue ( "b$i", chunk_split("123456789 ",4," ") );
//当然,如果不想让用户看到数字间有空格,那就把要分割的字段值设大一些,如例子中的4设为大于等于9的即可。
로그인 후 복사

EXcel로 내보낸 기본 코드의 앞부분:

<? 
if(count($data)>40000){ 
$filename_type=&#39;csv&#39;; 
}else{ 
$filename_type=&#39;xls&#39;; 
} 
header("Content-Type: application/vnd.ms-excel"); 
Header("Accept-Ranges:bytes"); 
Header("Content-Disposition:attachment;filename=".$filename.".".$filename_type); //$filename导出的文件名 
header("Pragma: no-cache"); 
header("Expires: 0"); 
if($filename_type==&#39;xls&#39;){ 
echo &#39;<html xmlns:o="urn:schemas-microsoft-com:office:office" 
xmlns:x="urn:schemas-microsoft-com:office:excel" 
xmlns="http://www.w3.org/TR/REC-html40"> 
<head> 
<meta http-equiv="expires" content="Mon, 06 Jan 1999 00:00:01 GMT"> 
<meta http-equiv=Content-Type content="text/html; charset=gb2312"> 
<!--[if gte mso 9]><xml> 
<x:ExcelWorkbook> 
<x:ExcelWorksheets> 
<x:ExcelWorksheet> 
<x:Name></x:Name> 
<x:WorksheetOptions> 
<x:DisplayGridlines/> 
</x:WorksheetOptions> 
</x:ExcelWorksheet> 
</x:ExcelWorksheets> 
</x:ExcelWorkbook> 
</xml><![endif]--> 

</head>&#39;; 
}
로그인 후 복사

다음에

형식 출력 데이터

오랜 시간 검색 끝에 드디어 유용한 정보를 발견했습니다.

“먼저 웹 페이지에서 Excel을 내보내는 원리를 이해해 보겠습니다. 이 데이터를 클라이언트에 보낼 때 클라이언트 프로그램(브라우저)에서 Excel 형식으로 읽어 주기를 원하므로 다음과 같이 설정합니다. MIME 형식: application/vnd.ms-excel Excel에서 파일을 읽을 때 셀에 지정된 형식이 없으면 Excel에서 셀의 데이터를 표시합니다. . 이는 사용자 정의 데이터 형식을 위한 공간을 제공합니다. 물론 Excel에서 지원하는 형식을 사용해야 합니다. 다음은 일반적으로 사용되는 형식입니다.
1) 텍스트: vnd.ms-excel.numberformat:@
2) 날짜: vnd.ms-excel.numberformat:yyyy/mm/dd
3) 번호: vnd.ms-excel.numberformat:#,##0.00
4) 통화: vnd.ms -excel .numberformat:\#,##0.00
5) 백분율: vnd.ms-excel.numberformat: #0.00%
또한 이러한 형식을 사용자 정의할 수 있습니다. 예를 들어 연도와 월을 다음과 같이 정의할 수 있습니다. : yy-mm 등. 이러한 형식을 알고 나면 이러한 형식을 셀에 추가하는 방법은 매우 간단합니다. 해당 태그 쌍(즉, 닫는 태그)에만 스타일을 추가하면 됩니다. ;, 다음과 같이 레이블 쌍 에 스타일을 추가합니다. 410522198402161833

에 스타일을 추가할 수도 있고, 상위 항목과 ,
에 스타일을 추가할 수도 있습니다. 태그 쌍 및 하위 태그 쌍 언제, 어떤 스타일로 데이터가 표시됩니까? 테스트 후 데이터에 가장 가까운 스타일로 표시됩니다.

위는 숫자를 과학적 표기법으로 변환하는 솔루션입니다. PHP로 엑셀을 내보낼 때 관련 내용이 더 있으니 PHP 중국어 홈페이지(www.php.cn)를 주목해주세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿