php 导入word 源码

2012年4月2日 发表评论 阅读评论

公司有大量的word数据需要导入数据库中,就研究的写了下。。。
<?php



$root = "D:/AppServ/www/test/";

$cid = 32;

$file_path = "28/$cid/";

//用来存储word文件路径

$a_files = array();



//查找某目录下的所有word文件

if( file_exists($root . $file_path) ) {

    $files = scandir($root . $file_path);

    natcasesort($files);

    if( count($files) > 2 ) { /* The 2 accounts for . and .. */

       

        // All files

        foreach( $files as $file ) {

            if( file_exists($root . $file_path . $file) && $file != ‘.’ && $file != ‘..’ && !is_dir($root . $file_path . $file) ) {

                $a_files[] = $root . $file_path . $file;

            }

        }



    }

}



//输出所有的目录

print_r($a_files);

echo "<br>———<br>";

foreach($a_files as  $k => $file){

   // 设置打开文章的时间

   set_time_limit(120);

   //输出当期打开的word文件名

    echo $file;

   // 建立一个指向新COM组件的索引

   $word = new COM("word.application") or die("Can’t start Word!");

   // 显示目前正在使用的Word的版本号   

   echo "Loading Word, v. {$word->Version}<br>";

   // 把它的可见性设置为0(假),如果要使它在最前端打开,使用1(真)

   // to open the application in the forefront, use 1 (true)

   $word->Visible = 0;       



    //打一个文档

    $word->Documents->OPen($file);

    //读取文档内容

    $test= $word->ActiveDocument->content->Text;

    echo $test;

    echo "<br>———<br>";

    //转换字符串

    //$test = iconv("GB2312","UTF-8",$test);

  // echo "<br>———<br>";

   //把word中每段的字符串放在p标签中

   //$test = "<p>".str_replace(chr(13),"</p><p>",$test);

    //echo $test = preg_replace("/(.*)\|/","<p>$1</p>",$test);

    echo "<br>———<br>";



  //$word->Documents->Add();

// 在新文档中添加文字

//$word->Selection->TypeText("$test");

//把文档保存在目录中

//$word->Documents[1]->SaveAs("D:/AppServ/www/test/20091113.doc");



set_time_limit(30);



// 关闭与COM组件之间的连接

$word->Quit();

//break;

}



?>


转载请注明来自:[MSN Spaces]http://msn.shandian.biz/197.html

  1. 本文目前尚无任何评论.