2013-04-26 88 views
3

其实我试图从一个MS Word文件中统计页面,我正在使用这个PHP脚本,但是,没有向我显示确切的结果,而且脚本没那么快。任何人都可以帮助我获得更好的脚本。PHP MS Word文件页数

$word = new COM("word.application"); 
if (!$word) { 
    echo ("Could not initialise MS Word object.\n"); 
    exit(1); 
} 
$word->Documents->Open(realpath("d:\\Test\\t.docx")); 

$pages = $word->ActiveDocument->BuiltInDocumentProperties(14); 
echo "Number of pages: " . $pages->value; 

$word->ActiveDocument->Close(false); 
$word->Quit(); 
$word = null; 
unset($word); 

回答

1

试试这个

$filename = "PATH"; 
$word = new COM("Word.Application"); 
$word->visible = true; 
$word->Documents->Open($filename); 

$wdStatisticPages = 2; // Value that corresponds to the Page count in the Statistics 
$word->ActiveDocument->ComputeStatistics($wdStatisticPages); 

echo "Total Page(s) : ". $word->ActiveDocument->ComputeStatistics($wdStatisticPages); 
$word->ActiveDocument->PrintOut(); 
$word->ActiveDocument->Close(); 
$word->Quit(); 

基本上,调用ComputeStatistics()方法与正确的值作为参数。

+0

我不知道为什么,但它不适合我。我曾尝试过。你有其他建议吗? – 2013-04-26 18:44:46