tempnam_variation1.phpt 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. --TEST--
  2. Test tempnam() function: usage variations - creating files
  3. --SKIPIF--
  4. <?php
  5. if(substr(PHP_OS, 0, 3) == "WIN")
  6. die("skip Do not run on Windows");
  7. ?>
  8. --FILE--
  9. <?php
  10. /* Prototype: string tempnam ( string $dir, string $prefix );
  11. Description: Create file with unique file name.
  12. */
  13. /* Creating number of unique files by passing a file name as prefix */
  14. $file_path = dirname(__FILE__)."/tempnamVar1";
  15. mkdir($file_path);
  16. echo "*** Testing tempnam() in creation of unique files ***\n";
  17. for($i=1; $i<=10; $i++) {
  18. echo "-- Iteration $i --\n";
  19. $files[$i] = tempnam("$file_path", "tempnam_variation1.tmp");
  20. if( file_exists($files[$i]) ) {
  21. echo "File name is => ";
  22. print($files[$i]);
  23. echo "\n";
  24. echo "File permissions are => ";
  25. printf("%o", fileperms($files[$i]) );
  26. echo "\n";
  27. clearstatcache();
  28. echo "File inode is => ";
  29. print_r( fileinode($files[$i]) ); //checking inodes
  30. echo "\n";
  31. echo "File created in => ";
  32. $file_dir = dirname($files[$i]);
  33. if ($file_dir == sys_get_temp_dir()) {
  34. echo "temp dir\n";
  35. }
  36. else if ($file_dir == $file_path) {
  37. echo "directory specified\n";
  38. }
  39. else {
  40. echo "unknown location\n";
  41. }
  42. clearstatcache();
  43. }
  44. else {
  45. print("- File is not created -");
  46. }
  47. }
  48. for($i=1; $i<=10; $i++) {
  49. unlink($files[$i]);
  50. }
  51. rmdir($file_path);
  52. echo "*** Done ***\n";
  53. ?>
  54. --EXPECTF--
  55. *** Testing tempnam() in creation of unique files ***
  56. -- Iteration 1 --
  57. File name is => %s%etempnam_variation1.tmp%s
  58. File permissions are => 100600
  59. File inode is => %d
  60. File created in => directory specified
  61. -- Iteration 2 --
  62. File name is => %s%etempnam_variation1.tmp%s
  63. File permissions are => 100600
  64. File inode is => %d
  65. File created in => directory specified
  66. -- Iteration 3 --
  67. File name is => %s%etempnam_variation1.tmp%s
  68. File permissions are => 100600
  69. File inode is => %d
  70. File created in => directory specified
  71. -- Iteration 4 --
  72. File name is => %s%etempnam_variation1.tmp%s
  73. File permissions are => 100600
  74. File inode is => %d
  75. File created in => directory specified
  76. -- Iteration 5 --
  77. File name is => %s%etempnam_variation1.tmp%s
  78. File permissions are => 100600
  79. File inode is => %d
  80. File created in => directory specified
  81. -- Iteration 6 --
  82. File name is => %s%etempnam_variation1.tmp%s
  83. File permissions are => 100600
  84. File inode is => %d
  85. File created in => directory specified
  86. -- Iteration 7 --
  87. File name is => %s%etempnam_variation1.tmp%s
  88. File permissions are => 100600
  89. File inode is => %d
  90. File created in => directory specified
  91. -- Iteration 8 --
  92. File name is => %s%etempnam_variation1.tmp%s
  93. File permissions are => 100600
  94. File inode is => %d
  95. File created in => directory specified
  96. -- Iteration 9 --
  97. File name is => %s%etempnam_variation1.tmp%s
  98. File permissions are => 100600
  99. File inode is => %d
  100. File created in => directory specified
  101. -- Iteration 10 --
  102. File name is => %s%etempnam_variation1.tmp%s
  103. File permissions are => 100600
  104. File inode is => %d
  105. File created in => directory specified
  106. *** Done ***