ホームページ >バックエンド開発 >PHPチュートリアル >PHPはcsvファイルクラスを読み取ります

PHPはcsvファイルクラスを読み取ります

WBOY
WBOYオリジナル
2016-07-25 08:43:47948ブラウズ
  1. define("CSV_Start", 0);
  2. define("CSV_Quoted", 1);
  3. define("CSV_Quoted2", 2);
  4. define("CSV_Unquoted", 3);
  5. function readCSV($fh, $len, $delimiter = ',', $enclosure = '"') {
  6. $data = Array();
  7. $fildNr = 0;
  8. $state = CSV_Start;
  9. $data [0] = "";
  10. do {
  11. $line = fgets($fh, $len);
  12. for ($ix = 0; $ix if ($ line[$ix] == $delimiter) {
  13. if ($state != CSV_Quoted) {
  14. $fildNr++;
  15. $state = CSV_Start; $fildNr] .= $line[$ix];
  16. }
  17. } elseif ($line[$ix] == $enclosure) {
  18. if ($state == CSV_Start) {
  19. $state = CSV_Quoted } elseif ( $state == CSV_Quoted) {
  20. $state = CSV_Quoted2;
  21. } elseif ($state == CSV_Quoted2) {
  22. $data[$fildNr] .= $line[$ix];
  23. $state = CSV_Quoted;
  24. } else {
  25. $data[$fildNr] .= $line[$ix];
  26. }
  27. } else {
  28. $data[$fildNr] .= $line[$ix];
  29. if ($state == CSV_Quoted2) {
  30. echo "エラー";
  31. } elseif ($state == CSV_Start) {
  32. $state = CSV_Unquoted;
  33. }
  34. }
  35. }
  36. } while ($state == CSV_Quoted);
  37. $data を返します。
  38. }
  39. ?>
  40. 复制代

PHP、CSV
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。