PHP를 사용하여 XML 파일을 CSV로 변환 할 수있는 방법이 있습니까?PHP에서 XML로 CSV 변환
3
A
답변
13
를 사용하여 검색 엔진이 매우 간단 PHP 5.0에서 XML에서 CSV 파일을 만들려면 같은 http://codestips.com/php-xml-to-csv/
로 코드 샘플을 찾기 위해, 우리는 단지 몇 줄을 작성해야합니다.
PHP 5.0에서 제공되는 SimpleXML 확장을 사용합니다.
SimpleXML은 전체 xml을 객체로 읽어 들여 해당 속성을 반복 할 수 있습니다. csv 출력 파일에 쓰려면 fputcsv를 사용합니다.
fputcsv는 줄을 csv로 포맷하고 파일에 씁니다.
<?xml version='1.0'?>
<cars>
<car>
<color>blue</color>
<price>2000</price>
</car>
<car>
<color>red</color>
<price>10000</price>
</car>
<car>
<color>black</color>
<price>5000</price>
</car>
</cars>
먼저 우리는 파일의 이름을 전달 simplexml_load_file 사용하여 우리의 XML을 읽어야하고, CSV의 모든 속성과 값을 가진 개체를 반환 :
한다고 가정 우리는이 XML이 cars.xml 이름을 가지고있다 :
$xml = simplexml_load_file($filexml);
을 읽은 후 우리는 자동차의 모든 자식 노드를 반복해야하며, 개체, 구분 및 인클로저를 지정 fputcsv 사용하여 출력 파일에 씁니다. 여기
<?php
$filexml='cars.xml';
if (file_exists($filexml)) {
$xml = simplexml_load_file($filexml);
$f = fopen('cars.csv', 'w');
foreach ($xml->car as $car) {
fputcsv($f, get_object_vars($car),',','"');
}
fclose($f);
}
?>
-2
가 있습니다 : 여기
foreach ($xml->car as $car)
fputcsv($f, get_object_vars($car),',','"');
는 PHP 5.0 CSV로 XML을 변환하는 완전한 소스 코드입니다 : 우리는 먼저 CSV에 기록하기 위해 배열로 객체를 변환해야합니다 아주 좋은 코드 예제. 내 rquirement와 잘 작동합니다.
<?php
$headers = array();
foreach ($xml->ROW->children() as $field) {
$headers[] = $field->getName();
}
$filename = ;
$csv_filename = str_replace('xml', 'csv', $filename);
$file = $this->getCsvDirectory() . '/' . $csv_filename;
if (file_exists($file)) {
unlink($file);
}
$csv = fopen($file, 'w');
fputcsv($csv, $headers, ',', '"');
foreach ($xml as $entry) {
$data = get_object_vars($entry);
$sanitized_data = array();
foreach ($data as $key => $datum) {
$sanitized_data[$key] = html_entity_decode($datum, ENT_COMPAT, 'UTF-8');
}
fputcsv($csv, $sanitized_data, ',', '"');
}
fclose($csv);
?>
관련 문제
- 1. PHP에서 연관 배열을 XML로 변환
- 2. HTML 테이블 데이터를 CSV 및 XML로 변환
- 3. Linq에서 XML로 XML 속성을 XML로 변환
- 4. PHP에서 UTF-8 문자열을 PHP의 7 비트 XML로 변환
- 5. reportviewer 데이터를 xml로 변환
- 6. 양식 데이터를 XML로 변환
- 7. 레거시 SGM을 XML로 변환
- 8. xsd에서 xml로 변환 도움말?
- 9. PDF를 XML로 변환 하시겠습니까?
- 10. Java에서 XML로 변환
- 11. 텍스트를 xml로 변환
- 12. xml로 변환 Excel
- 13. 오브젝트를 xml로 변환
- 14. 오브젝트를 XML로 변환 코코아
- 15. 구성 파일을 XML로 변환
- 16. JTree를 XML로 변환
- 17. PHP에서 file_get_contents로 CSV 읽기하기
- 18. PHP에서 CSV 파일 내보내기
- 19. PHP에서 CSV 생성 멋지
- 20. .CSV 파일을 .XML로 변환하는 PHP 스크립트
- 21. Java SGML에서 XML로 변환 하시겠습니까?
- 22. docX를 사용자 정의 XML로 변환
- 23. SQL 결과 집합을 XML로 변환
- 24. XSLT - XML을 다른 XML로 변환
- 25. 임의의 문자열을 루비의 xml로 변환
- 26. 자바 객체를 동적 XML로 변환
- 27. PHP에서 내보내기 CSV 파일의 문제
- 28. PHP에서 큰 CSV 파일 읽기
- 29. MS 문서를 CSV 파일로 변환
- 30. PHP에서 킬로바이트를 바이트로 변환
xml 샘플을 게시 할 수도 있습니까? – YOU
XML에는 계층 적 데이터가 포함될 수 있으며 CSV에는 표 형식의 데이터 만 포함될 수 있습니다. 따라서 XML에 따라 달라집니다. –