PHP에서 Excel 시스템 시간 형식을 쿼리하는 방법
최근에 오랫동안 저를 괴롭혔던 문제에 직면했습니다. PHP를 사용하여 Excel 테이블을 쿼리할 때 시스템 시간 형식이 잘못됩니다. 이는 매우 일반적인 문제이지만 해결하기 어려울 수 있습니다. 많은 고문 끝에 마침내 해결책을 찾았습니다. 이 기사에서는 내 경험과 솔루션을 여러분과 공유하겠습니다.
먼저, 이 문제의 구체적인 징후를 살펴보겠습니다. PHP를 사용하여 Excel 테이블을 쿼리할 때 시스템 시간 형식 오류가 자주 발생합니다. 이는 일반적으로 Excel 표의 날짜와 시간이 시간 형식이 아닌 텍스트 형식으로 저장되기 때문입니다. PHP를 사용하여 이러한 날짜와 시간을 읽으면 시스템은 이를 시간 형식 대신 문자열로 구문 분석합니다. 이로 인해 데이터 분석 및 처리 시 날짜 간의 시차를 정확하게 계산하지 못하는 등의 문제가 발생합니다.
이 문제를 해결하는 방법은 여러 가지가 있지만 가장 간단하고 효과적인 방법은 PHPExcel 라이브러리를 사용하는 것입니다. PHPExcel은 Excel 파일을 읽고 쓰는 데 사용할 수 있는 무료 PHP 라이브러리입니다. 매우 강력한 기능을 갖추고 있으며 다양한 Excel 형식을 처리할 수 있고 날짜 및 시간 형식을 올바르게 구문 분석할 수 있습니다.
다음은 PHPExcel 라이브러리를 사용하여 Excel 테이블을 읽고 날짜 및 시간 형식을 구문 분석하는 기본 예제 코드입니다.
require_once 'PHPExcel.php'; $reader = PHPExcel_IOFactory::createReader('Excel2007'); $reader->setReadDataOnly(true); $excel = PHPExcel_IOFactory::load('test.xlsx'); $worksheet = $excel->getActiveSheet(); foreach ($worksheet->getRowIterator() as $row) { foreach ($row->getCellIterator() as $cell) { if ($cell->getDataType() == PHPExcel_Cell_DataType::TYPE_NUMERIC && PHPExcel_Shared_Date::isDateTime($cell)) { $value = $cell->getFormattedValue(); $date = date('Y-m-d H:i:s', PHPExcel_Shared_Date::ExcelToPHP($value)); echo $date; } else { echo $cell->getValue(); } echo " "; } echo "\n"; }
이 코드는 PHPExcel 라이브러리의 PHPExcel_IOFactory, PHPExcel_Shared_Date 및 PHPExcel_Cell_DataType 클래스를 사용하여 Excel에서 데이터를 읽습니다. 테이블. 먼저, PHPExcel_IOFactory 클래스의 createReader() 메서드를 사용하여 Excel 리더를 생성합니다. 그런 다음 리더의 setReadDataOnly() 메서드를 true로 설정하여 형식을 읽지 않고 Excel 테이블의 데이터만 읽습니다. 다음으로 load() 메서드를 사용하여 Excel 테이블을 로드합니다. 마지막으로 getRowIterator() 및 getCellIterator() 메서드를 사용하여 Excel 테이블의 행과 열을 반복합니다. 셀의 데이터 유형이 숫자이고 날짜 및 시간 형식인 경우 PHPExcel_Shared_Date 클래스의 isDateTime() 메서드를 사용하여 유효성을 검사합니다. 유효성 검사가 통과되면 getFormattedValue() 및 ExcelToPHP() 메서드를 사용하여 날짜 및 시간 형식을 PHP의 표준 날짜 및 시간 형식으로 구문 분석합니다.
이 코드의 핵심은 PHPExcel_Shared_Date 클래스를 사용하여 Excel의 날짜 및 시간 형식을 구문 분석하는 것입니다. PHPExcel_Shared_Date는 ExcelToPHP() 및 PHPToExcel() 메서드를 포함하여 날짜 및 시간 형식을 올바르게 구문 분석하는 데 도움이 되는 몇 가지 메서드를 제공하는 PHPExcel 라이브러리의 특수 클래스입니다. ExcelToPHP() 메서드는 Excel의 날짜 및 시간 형식을 PHP의 표준 날짜 및 시간 형식으로 변환하고, PHPToExcel() 메서드는 PHP의 날짜 및 시간 형식을 Excel의 날짜 및 시간 형식으로 변환합니다. 이러한 방법은 Excel 표에서 날짜와 시간을 처리할 때 매우 유용하고 필수적입니다.
요약하자면, PHP를 사용하여 Excel 테이블을 쿼리할 때 시스템 시간 형식 오류가 자주 발생합니다. 이 문제를 해결하는 가장 쉽고 효율적인 방법은 PHPExcel 라이브러리를 사용하는 것입니다. PHPExcel 라이브러리를 사용하면 Excel 테이블의 날짜 및 시간 형식을 올바르게 구문 분석하고 이를 PHP의 표준 날짜 및 시간 형식으로 변환할 수 있습니다. 이러한 방식으로 날짜 간의 시차를 정확하게 계산하고 데이터 분석 및 처리를 수행할 수 있습니다. 이 기사가 비슷한 문제를 해결하는 데 도움이 되기를 바랍니다.
위 내용은 PHP에서 Excel 시스템 시간 형식을 쿼리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











이 기사는 PHP 및 완화 전략의 OWASP Top 10 취약점에 대해 설명합니다. 주요 문제에는 PHP 응용 프로그램을 모니터링하고 보호하기위한 권장 도구가 포함 된 주입, 인증 파손 및 XSS가 포함됩니다.

PHP 8의 JIT 컴파일은 자주 실행되는 코드를 컴퓨터 코드로 컴파일하여 성능을 향상시켜 계산이 많은 응용 프로그램에 도움이되고 실행 시간을 줄입니다.

이 기사는 코드 주입과 같은 취약점을 방지하기 위해 PHP 파일 업로드 보안에 대해 설명합니다. 파일 유형 유효성 검증, 보안 저장 및 오류 처리에 중점을 두어 응용 프로그램 보안을 향상시킵니다.

이 기사는 PHP의 대칭 및 비대칭 암호화에 대해 논의하여 적합성, 성능 및 보안 차이를 비교합니다. 대칭 암호화는 더 빠르고 벌크 데이터에 적합하지만 안전한 키 교환에는 비대칭이 사용됩니다.

이 기사에서는 PHP에서 강력한 인증 및 승인을 구현하여 무단 액세스를 방지하고 모범 사례를 자세히 설명하고 보안 향상 도구를 권장합니다.

이 기사는 CSRF 토큰, 동일한 사이트 쿠키 및 적절한 세션 관리를 포함하여 PHP의 CSRF 공격을 방지하는 전략에 대해 설명합니다.

이 기사는 토큰 버킷 및 누출 된 버킷과 같은 알고리즘을 포함하여 PHP에서 API 요율 제한을 구현하고 Symfony/Rate-Limiter와 같은 라이브러리 사용 전략에 대해 설명합니다. 또한 모니터링, 동적 조정 요율 제한 및 손도 다룹니다.

기사는 내장 함수 사용, 화이트리스트 접근 방식 및 서버 측 유효성 검사와 같은 기술에 중점을 둔 보안을 향상시키기 위해 PHP 입력 유효성 검증에 대한 모범 사례를 논의합니다.
