スクリプトでWord文書を開こうとしましたが、同じエラーが表示されます。
Fatal error: Class 'COM' not found in /Applications/XAMPP/xamppfiles/htdocs/**/**.php on line 3
私のコード:
<?php
$Word = new COM("Word.application") or die("Unable to instantiate Word");
$Word->Visible = 1;
$Word->Documents->Open("wordfile.docx");
$temp = $Word->Dialogs->Item(228); // returns wdDialogToolsWordCount dialog object
$temp->Execute(); //updates the Word count
$numwords = $temp->Words(); //gets the words out of it
echo 'Word count = '.$numwords;
$Word->Quit();
?>
変更しようとしましたphp.ini
およびCOM
セクションからセミコロンを削除します。
[com]
path to a file containing GUIDs, IIDs or filenames of files with TypeLibs
com.typelib_file =
allow Distributed-COM calls
com.allow_dcom = true
autoregister constants of a components typlib on com_load()
com.autoregister_typelib = true
register constants casesensitive
com.autoregister_casesensitive = false
show warnings on duplicate constat registrations
com.autoregister_verbose = true
それでも同じエラーが発生します。
MacではXAMMP
を使用し、LinuxベースのWebホスティングを使用しています。
からPHP 5.4.5、COMおよびDOTNETはphp coreに組み込まれなくなりました。php.iniにCOMサポートを追加する必要があります。
[COM_DOT_NET]
extension=php_com_dotnet.dll
それ以外の場合、エラーログに次のように表示されます:致命的なエラー:クラス 'COM'が見つかりません
拡張機能は、Windows用のphp 5.4.5に含まれています。
COM要件 を参照してください:
COM関数は、WindowsバージョンのPHPでのみ使用できます。
.Netサポートには、PHP 5および.Netランタイムが必要です。