ホームページ > バックエンド開発 > PHPチュートリアル > PHP データを Excel_PHP にインポートするチュートリアル

PHP データを Excel_PHP にインポートするチュートリアル

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-07-20 11:06:54
オリジナル
814 人が閲覧しました

class CsvFieldDump {

var $headers;
var $fieldnum;
function CsvFieldDump($infile){
if(empty($infile)){
die("読み取るcsvファイルを指定する必要があります");
}
if(!file_exists($infile)){
die("$infile が存在しません!n");
}
$this->infile = $infile;
$this->fieldnum = $field;
$this->createFile=0;
return(true);
}

var $headers=array();
function dump_headers($dumptoscreen=1){
$this->gt;fd=fopen($this ->infile, "r") または die("CSV ファイル $file を開けませんでした");
$count=0;
while($data = fgetcsv($this->fd, 1000, "," ) ){
if(!$count){
if($dumptoscreen){
print_r($data);
}
$this->headers=$data;
}
$count=1; 
}
return($this->headers);
}

function dump_column($num){


$this->fieldnum = $num;
$this->fd=fopen($this- >infile, "r") または die("CSV ファイル $file を開けませんでした");
$count=0;
while($data = fgetcsv($this->fd, 1000, ",") ){
$array=array();
if(is_array($this->fieldnum)){
foreach($this->fieldnum as $num){
$array[]=$data[$num] ;
}
}else{
$array = array($data[$this->fieldnum]);
}
$this->write_line($array);
}
}


var $colname;
var $headers_flip;
function dump_column_by_name($name){
if(!isset($name)){
die("フィールド名が指定されていません");
}
$this->colname=$name;
$ this->dump_headers(0);
$this->headers_flip = array_flip($this->headers);
if(is_array($this->colname)){
foreach($this->colname) as $n){
$array[] = $this->headers_flip[$n];
}
}else{
$array[] = $this->headers_flip[$this->colname];
}

$this->dump_column($array);
}

function write_line($data){
$string="";
$num=count($data);
for($x=0; $x $string.=$data[$x];
if($x $string.=",";
}
}
echo $ string."n";
}

}

////////////////////// C プログラムだと思わせる :)
if(isset ($argv[1])){

$filename = $argv[count($argv)-1];

if($argv[1] == "-h"){
render_help();
die ();
}else{
$b=new CsvFieldDump($filename);
}

$x=0;
foreach($argv as $opt){
switch($opt) {
case "df":
case "-df" :
$number = $argv[$x+1];
if(strstr($number, ",")){
$numbers =explode(",",$number);
} else{
$numbers = $number;
}
$b->dump_column($numbers);
break;

case "-dn":
$number = $argv[$x+1];
if( strstr($number, ",")){
$names =explode(",",$number);
}else{
$names = $number;
}
$b->dump_column_by_name($names);
break;

case "--help":
case "-h" :
render_help(); 
休憩;

case case "-dh":

$ b-> dump_headers(); .com
-df = フィールド番号 n をダンプします (複数のフィールド番号のカンマ区切りリストも受け入れます: -df 1,2,3)
-dn = フィールドをダンプします) N という名前 (複数の名前のカンマ区切りリストを受け入れます。例: -dn Code,Desc)
-dh = CSV ヘッダーをダンプします
";
}


?>





http://www.bkjia.com/PHPjc/445005.html

www.bkjia.com

tru​​e
http://www.bkjia.com/PHPjc/445005.html

技術記事クラス CsvFieldDump { var $headers; var $fieldnum; function CsvFieldDump($infile){ if(empty($infile)){ die(読み取る CSV ファイルを指定する必要があります); } if(!file_exists($infile)){ die($i...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
PHP 拡張子 intl
から 1970-01-01 08:00:00
0
0
0
phpのデータ取得?
から 1970-01-01 08:00:00
0
0
0
PHP GET エラー レポート
から 1970-01-01 08:00:00
0
0
0
phpを上手に学ぶ方法
から 1970-01-01 08:00:00
0
0
0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート