file_variation8.phpt 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. --TEST--
  2. Test file function : variation - various absolute and relative paths
  3. --CREDITS--
  4. Dave Kelsey <d_kelsey@uk.ibm.com>
  5. --FILE--
  6. <?php
  7. /* Prototype : array file(string filename [, int flags[, resource context]])
  8. * Description: Read entire file into an array
  9. * Source code: ext/standard/file.c
  10. * Alias to functions:
  11. */
  12. echo "*** Testing file() : variation ***\n";
  13. $mainDir = "fileVar8.dir";
  14. $subDir = "fileVar8Sub";
  15. $absMainDir = dirname(__FILE__)."/".$mainDir;
  16. mkdir($absMainDir);
  17. $absSubDir = $absMainDir."/".$subDir;
  18. mkdir($absSubDir);
  19. $old_dir_path = getcwd();
  20. chdir(dirname(__FILE__));
  21. $allDirs = array(
  22. // absolute paths
  23. "$absSubDir/",
  24. "$absSubDir/../".$subDir,
  25. "$absSubDir//.././".$subDir,
  26. "$absSubDir/../../".$mainDir."/./".$subDir,
  27. "$absSubDir/..///".$subDir."//..//../".$subDir,
  28. "$absSubDir/BADDIR",
  29. // relative paths
  30. $mainDir."/".$subDir,
  31. $mainDir."//".$subDir,
  32. $mainDir."///".$subDir,
  33. "./".$mainDir."/../".$mainDir."/".$subDir,
  34. "BADDIR",
  35. );
  36. $filename = 'FileGetContentsVar7.tmp';
  37. $absFile = $absSubDir.'/'.$filename;
  38. $h = fopen($absFile,"w");
  39. fwrite($h, "contents read");
  40. fclose($h);
  41. for($i = 0; $i<count($allDirs); $i++) {
  42. $j = $i+1;
  43. $dir = $allDirs[$i];
  44. echo "\n-- Iteration $j --\n";
  45. var_dump(file($dir."/".$filename));
  46. }
  47. unlink($absFile);
  48. chdir($old_dir_path);
  49. rmdir($absSubDir);
  50. rmdir($absMainDir);
  51. echo "\n*** Done ***\n";
  52. ?>
  53. --EXPECTF--
  54. *** Testing file() : variation ***
  55. -- Iteration 1 --
  56. array(1) {
  57. [0]=>
  58. string(13) "contents read"
  59. }
  60. -- Iteration 2 --
  61. array(1) {
  62. [0]=>
  63. string(13) "contents read"
  64. }
  65. -- Iteration 3 --
  66. array(1) {
  67. [0]=>
  68. string(13) "contents read"
  69. }
  70. -- Iteration 4 --
  71. array(1) {
  72. [0]=>
  73. string(13) "contents read"
  74. }
  75. -- Iteration 5 --
  76. Warning: file(%sfileVar8.dir/fileVar8Sub/..///fileVar8Sub//..//../fileVar8Sub/FileGetContentsVar7.tmp): failed to open stream: No such file or directory in %s on line %d
  77. bool(false)
  78. -- Iteration 6 --
  79. Warning: file(%sfileVar8.dir/fileVar8Sub/BADDIR/FileGetContentsVar7.tmp): failed to open stream: No such file or directory in %s on line %d
  80. bool(false)
  81. -- Iteration 7 --
  82. array(1) {
  83. [0]=>
  84. string(13) "contents read"
  85. }
  86. -- Iteration 8 --
  87. array(1) {
  88. [0]=>
  89. string(13) "contents read"
  90. }
  91. -- Iteration 9 --
  92. array(1) {
  93. [0]=>
  94. string(13) "contents read"
  95. }
  96. -- Iteration 10 --
  97. array(1) {
  98. [0]=>
  99. string(13) "contents read"
  100. }
  101. -- Iteration 11 --
  102. Warning: file(BADDIR/FileGetContentsVar7.tmp): failed to open stream: No such file or directory in %s on line %d
  103. bool(false)
  104. *** Done ***