ホームページ  >  記事  >  バックエンド開発  >  PHP を使用して WORD コンテンツの読み取り方法を変更する

PHP を使用して WORD コンテンツの読み取り方法を変更する

藏色散人
藏色散人転載
2021-08-27 16:48:324880ブラウズ

PHP を使用して WORD コンテンツの読み取り方法を変更する

プロジェクト: アンケート

要件: WORD インポート アンケート

背景: 作業では何百もの WORD 形式のアンケートがあります。バックエンドに手動で入力するには、間違いなく多くの作業が必要です。直接インポートできることを願っています。

気分: ご依頼をいただいた後は複雑な気持ちになりました。以前にも Excel インポートを行ったことがあるのですが、既製のプラグインがあり、コードを検索する必要が多かったので。

Word インポートには間違いなく知識の盲点が含まれますが、需要は存在するため、製品のクラスメートに勝つことはできません。もう我慢するしかなかった。

難しさ: Word は内容を読むのが難しく、読んだときに内容が適切に構成されていません。

問題を解決するためのアイデア:

まず単語を読んでから、それをどのように構成するかについて話します。

Read 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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。