>  기사  >  백엔드 개발  >  PHP를 사용하여 WORD 콘텐츠를 읽는 방식 변경

PHP를 사용하여 WORD 콘텐츠를 읽는 방식 변경

藏色散人
藏色散人앞으로
2021-08-27 16:48:324885검색

PHP를 사용하여 WORD 콘텐츠를 읽는 방식 변경

프로젝트: 설문지

요구 사항: WORD 가져오기 설문지

배경: 작업에 수백 개의 WORD 형식 설문지가 있습니다. 이를 수동으로 입력하기 위해 백엔드로 이동하면 작업량이 많을 것입니다. 직접 수입하길 바랍니다.

기분: 예전에 엑셀 가져오기를 해본 적도 있고, 기성 플러그인도 있고, 코드도 많이 검색해야 해서 요청을 받고 복잡한 기분이 들었습니다.

단어 가져오기에는 의심할 여지없이 지식 사각지대가 포함되지만 수요가 있으므로 제품 동급생을 이길 수는 없습니다! 나는 총알을 물어뜯어야만 했다.

난이도: 단어가 내용을 읽기 어렵고, 읽을 때 내용의 구조가 잘 구성되어 있지 않습니다.

문제 해결 방법:

단어를 먼저 읽고 구조를 어떻게 구성할지 이야기해 보세요.

워드 읽기:

처음에는 PHPWORD를 사용하려고 생각했습니다. 결국 PHPOFFICE와 같은 성숙한 플러그인은 WORD 콘텐츠를 직접 읽을 수 있어야 합니다.

그러나 현실은 매우 추악합니다. 모든 문서를 검색했지만 WORD 내용을 직접 읽을 수 있는 방법을 찾지 못했습니다. PHPWORD는 WORD를 HTML 및 TDF로 변환하는 메소드만 제공합니다.

변환 아이디어:

저는 WORD를 읽을 수 없으므로 HTML을 읽을 수 있습니다. WORD를 HTML로 변환한 다음 HTML 콘텐츠를 읽으면 됩니다.

코드:

<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
use PhpOffice\PhpSpreadsheet\Reader\Html;
use PhpOffice\PhpWord\Reader\Word2007;
class Test extends Command {
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = &#39;word&#39;;
    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = &#39;word&#39;;
    /**
     * Create a new command instance.
     *
     * @return void
     */
    public function __construct() {
        parent::__construct();
    }
    /**
     * Execute the console command.
     *
     * @return int
     */
    public function handle(Word2007 $word) {
        //WORD转换HTML
        $result=$word->load(storage_path(&#39;测试.docx&#39;));
        $write=new \PhpOffice\PhpWord\Writer\HTML($result);
        $write->save(storage_path().&#39;/测试.html&#39;);
        //读取HTML内容
        $document=new \DOMDocument();
        $document->loadHTML(file_get_contents(storage_path(&#39;测试.html&#39;)));
        $html=simplexml_import_dom($document);
        dd((array)$html->body);
    }
}

테스트 시작: 새로운 test.docx

Test.docx 콘텐츠:

PHP를 사용하여 WORD 콘텐츠를 읽는 방식 변경

실행 스크립트:

php artisan word

결과:

PHP를 사용하여 WORD 콘텐츠를 읽는 방식 변경

위 내용은 PHP를 사용하여 WORD 콘텐츠를 읽는 방식 변경의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 learnku.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제