您好,欢迎访问一九零五行业门户网

php 导入数据到excel_PHP教程

class csvfielddump  {
 var $headers;
 var $fieldnum;
 function csvfielddump($infile){
  if(empty($infile)){
   die(you must specify a csv file to readn);
  }
  if(!file_exists($infile)){
   die($infile doesn't exist!n);
  }
  $this->infile  = $infile;
  $this->fieldnum = $field;
  $this->createfile=0;
  return(true);
 }
 var $headers=array();
 function dump_headers($dumptoscreen=1){
  $this->fd=fopen($this->infile, r) or die(couldn't open csv file $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) or die(couldn't open csv file $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(no field name specified);
  }
  $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;
 }
}
/////////////////////// make it think its a c program :)
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(); 
   break;
   case -dh :
    $b->dump_headers();
   break;
  }
  $x++;
 }
}
function render_help(){
echo csvfielddump version 0.0.0.1 by mark fate_amendable_to_change@yahoo.com
-df     = dumps field(s) number n - also (accepts comma delimited list for multiple field numbers eg: -df 1,2,3)
-dn     = dumps field(s) named n (accepts comma delimited list for multiple names eg: -dn code,desc)
-dh        = dumps csv headers
;
}
?>
http://www.bkjia.com/phpjc/445005.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/445005.htmltecharticleclass csvfielddump { var $headers; var $fieldnum; function csvfielddump($infile){ if(empty($infile)){ die(you must specify a csv file to readn); } if(!file_exists($infile)){ die($i...
其它类似信息

推荐信息