gh8121.phpt 921 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. --TEST--
  2. GH-8121 (SplFileObject - seek and key with csv file inconsistent)
  3. --FILE--
  4. <?php
  5. $flagss = [
  6. SplFileObject::READ_AHEAD | SplFileObject::READ_CSV | SplFileObject::SKIP_EMPTY | SplFileObject::DROP_NEW_LINE,
  7. SplFileObject::READ_AHEAD | SplFileObject::SKIP_EMPTY | SplFileObject::DROP_NEW_LINE,
  8. SplFileObject::SKIP_EMPTY | SplFileObject::DROP_NEW_LINE,
  9. ];
  10. foreach ($flagss as $flags) {
  11. $file = new SplFileObject(__DIR__ . "/gh8121.csv", "r");
  12. echo "flags: $flags\n";
  13. $file->setFlags($flags);
  14. $file->seek(0);
  15. var_dump($file->key());
  16. $file->seek(1);
  17. var_dump($file->key());
  18. $file->seek(2);
  19. var_dump($file->key());
  20. $file->seek(3);
  21. var_dump($file->key());
  22. }
  23. ?>
  24. --EXPECT--
  25. flags: 15
  26. int(0)
  27. int(1)
  28. int(2)
  29. int(3)
  30. flags: 7
  31. int(0)
  32. int(1)
  33. int(2)
  34. int(3)
  35. flags: 5
  36. int(0)
  37. int(1)
  38. int(2)
  39. int(3)