PHPデータをEXECELクラスにエクスポート

WBOY
リリース: 2016-06-21 09:07:19
オリジナル
976 人が閲覧しました

データ

/*
名前: ToExcel
著者: Riyao Chen
バージョン: 0.0.1
日付: 2006-05-15
ライセンス: GPL
*/

/*****************************************
//このクラスは、データをクエリからクエリに変更します。 Excel ファイル
//SQL FORMAT:
SELECT c_id,c_title,c_subject FROM news_content WHERE c_parid=0 ORDER BY c_date desc,c_clicks desc
//データベース接続は外部で開かれています;
//パラメータ:$sql,クエリ文 ; $database、どのデータベース
***********************************/
class ToExcel
{
var $sql="";
var $fields;

var $db;

function ToExcel($sql,$database)
{
if($sql == "")
return $this-> ;errorMessage("NO QUERY SENTENCE!");

$this->db = $database;

//テーブル名を取得
$tmp=ereg_replace("SELECT.+FROM ","",$sql);
$tmp=ereg_replace("ORDER BY.+","",$tmp);
$this->table = ereg_replace(" WHERE.+","",$tmp);
//フィールドの取得
$field = ereg_replace("SELECT ","",$sql);
$field = ereg_replace (" FROM.+","",$field);
if(trim($field) == "*")
$this->fields = $this->GetFieldList($this->table) ;//$mysql->GetFieldList($this->table);
else
$this->fields =explode(",",$field);

$this->sql = $sql;

}

function ShowExcel()
{
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=Excel.xls");

//OutPutフィールド Start
foreach($this->fields as $key=>$value)
{
echo $value."t";

}
echo "n";
//出力フィールド End

//出力フィールド値 Start
$result = mysql_query($this->sql);
while($row = mysql_fetch_array($result))
{
foreach($this->fields as $key=>$value)
echo iconv("utf-8","gb2312",$row[$value]."t");

echo "n";
}

//出力フィールド値 End

}

// FieldLis 関数を取得します
関数 GetFieldList($table)
{
if($result=mysql_list_fields($this->db,$table)){
$i=0;
while($i < mysql_num_fields($result)){
$fd_names[$i]=mysql_field_name($result,$i);
$i++;
}
return($fd_names);

}else
return $this->errorMessage( "テーブルにフィールド リストが見つかりません: $tbl_name");

}

function errorMessage($msg){
echo "エラー: $msg : ".mysql_error();
return false;
}

}

/*
exemple

$sql = "SELECT * FROM news_content WHERE c_parid=0 ORDER BY c_date desc,c_clicks desc";
$excel = new ToExcel($sql,DATABASE_NAME);
$excel->ShowExcel ();

*/
?>



関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート