<개인공부 - private study>/[PHP]

php -> excel로 변경

powerboss 2013. 12. 3. 16:33
반응형
 require_once('reviser.php');
 
 // reviserのClassオブジェクトを新規に作成します。
$reviser=NEW Excel_Reviser;

$sheet_count = 0;
$g = 0;
$reviser->setInternalCharset('utf-8');


 $reviser->changeStr('[keyword]', $target_name);
 
 
 // シート名を書き換える例です
$reviser->setSheetname($sheet_count,$target_name);
       
       
$list = $DL->getAllKuchikomiDownload();

$row = 2;
$g = 0;


//      setCellMerge($sheet_count,スタート縦,エンド縦,スタート横,エンド横)


        foreach($list AS $key => $s){
            if(!isset($s['comment']) || $s['comment'] == ''){continue;}
            $comment = str_replace(array("\r\n","\r","\n"), '', $s['comment']);
            $reply_comment = str_replace(array("\r\n","\r","\n"), '', $s['reply_comment']);
            $reviser->addString($sheet_count,$row,0, $s['post_date']);
            $reviser->addString($sheet_count,$row,1, $s['get_date']);
           
           
           
            //たまにサイト名がない場合があるので、チェックする!
            if(isset($s['site_id']) && $s['site_id'] != '' && isset($lib->getConfig()->crawler->wedding_sites->$s['site_id']->site_name)){
                $site = $lib->getConfig()->crawler->wedding_sites->$s['site_id']->site_name;
                $reviser->addString($sheet_count,$row,2, $site);
            }
           
            $status = '';
            //最終ステータスの取得
            $sql = "SELECT  ";
            $sql .= " LEFT JOIN
           
            try {
                $status = $db->fetchOne($sql);
            } catch(Exception $e) {
                $lib->dbErr($sql,"\n".__FILE__."\n".__LINE__);
            }
            $reviser->addString($sheet_count,$row,3, $status);
           
            //投稿コメント
            $reviser->setCellMerge($sheet_count,$row,$row,4,14);
            $reviser->addString($sheet_count,$row,4, $comment);
            $reviser->setCellMerge($sheet_count,$row,$row,15,25);
            $reviser->addString($sheet_count,$row,15, $reply_comment);
           
            $row++;
        }


// テンプレートシート削除
$reviser->rmSheet(1);
// セルを削除する例です。
//$reviser->rmCell(0,46,2);
// 入力出力ファイル名の設定

$readfile='../excel/sample.xls'; // テンプレートファイルの指定
$outfile="comment_report_".date("ymdHi",strtotime(date("Y-m-d H:i:s"))).".xls";           // 出力するファイル名です
       
// 最後に書換えを実行します
$reviser->reviseFile($readfile,$outfile);
       
exit;
반응형