php实现的读取CSV文件函数示例

  1. functionread_csv($cvs) {
  2. $shuang= false;
  3. $str=file_get_contents($cvs);
  4. for($i=0;$i<strlen($str);$i++) {
  5. if($str{$i}=='"') {
  6. if($shuang) {
  7. if($str{$i+1}=='"') {
  8. $str{$i} ='*';
  9. $str{$i+1} ='*';
  10. }else{
  11. $shuang= false;
  12. }
  13. }else{
  14. $shuang= true;
  15. }
  16. }
  17. if($str{$i}==',') {
  18. if($shuang) {
  19. }else{
  20. $str{$i} ='|';
  21. }
  22. }
  23. if($str{$i}=="\n") {
  24. if($shuang) {
  25. $str{$i} ='^';
  26. }else{
  27. }
  28. }
  29. }
  30. $str=str_replace(array('"','*'),array('','"'),$str);
  31. $a1=explode("\n",$str);
  32. $array=array();
  33. foreach($a1as$k=>$value) {
  34. if($value) {
  35. $value=str_replace("^","\n",$value);
  36. $array[$k] =explode("|",$value);
  37. }
  38. }
  39. return$array;
  40. }