readdir_variation6.phpt 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. --TEST--
  2. Test readdir() function : usage variations - operate on previously opened directory
  3. --FILE--
  4. <?php
  5. /* Prototype : string readdir([resource $dir_handle])
  6. * Description: Read directory entry from dir_handle
  7. * Source code: ext/standard/dir.c
  8. */
  9. /*
  10. * Open two directory handles on the same directory and pass both
  11. * to readdir() to test behaviour
  12. */
  13. echo "*** Testing readdir() : usage variations ***\n";
  14. // include the file.inc for Function: function create_files()
  15. include( dirname(__FILE__)."/../file/file.inc");
  16. // create the temporary directory
  17. $dir_path = dirname(__FILE__) . "/readdir_variation6";
  18. mkdir($dir_path);
  19. // create files within the temporary directory
  20. create_files($dir_path, 3, "alphanumeric", 0755, 1, "w", "readdir_variation6");
  21. // open the directory
  22. $dir_handle1 = opendir($dir_path);
  23. // open the same directory again without closing it
  24. opendir($dir_path);
  25. echo "\n-- Reading Directory Contents with Previous Handle --\n";
  26. $a = array();
  27. while (FALSE !== ($file = readdir($dir_handle1))) {
  28. $a[] = $file;
  29. }
  30. sort($a);
  31. foreach ($a as $file) {
  32. var_dump($file);
  33. }
  34. echo "\n-- Reading Directory Contents with Current Handle (no arguments supplied) --\n";
  35. $a = array();
  36. while (FALSE !== ($file = readdir())) {
  37. $a[] = $file;
  38. }
  39. sort($a);
  40. foreach ($a as $file) {
  41. var_dump($file);
  42. }
  43. // delete temporary files
  44. delete_files($dir_path, 3, "readdir_variation6");
  45. closedir($dir_handle1);
  46. closedir();
  47. ?>
  48. ===DONE===
  49. --CLEAN--
  50. <?php
  51. $dir_path = dirname(__FILE__) . "/readdir_variation6";
  52. rmdir($dir_path);
  53. ?>
  54. --EXPECTF--
  55. *** Testing readdir() : usage variations ***
  56. -- Reading Directory Contents with Previous Handle --
  57. string(1) "."
  58. string(2) ".."
  59. string(23) "readdir_variation61.tmp"
  60. string(23) "readdir_variation62.tmp"
  61. string(23) "readdir_variation63.tmp"
  62. -- Reading Directory Contents with Current Handle (no arguments supplied) --
  63. string(1) "."
  64. string(2) ".."
  65. string(23) "readdir_variation61.tmp"
  66. string(23) "readdir_variation62.tmp"
  67. string(23) "readdir_variation63.tmp"
  68. ===DONE===