dirname_basic-win32.phpt 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. --TEST--
  2. Test dirname() function : basic functionality
  3. --CREDITS--
  4. Dave Kelsey <d_kelsey@uk.ibm.com>
  5. --SKIPIF--
  6. <?php
  7. if(substr(PHP_OS, 0, 3) != "WIN")
  8. die("skip Only valid for Windows");
  9. ?>
  10. --FILE--
  11. <?php
  12. /* Prototype : string dirname(string path)
  13. * Description: Returns the directory name component of the path
  14. * Source code: ext/standard/string.c
  15. * Alias to functions:
  16. */
  17. echo "*** Testing dirname() : basic functionality ***\n";
  18. // Initialise all required variables
  19. $paths = array(
  20. '',
  21. ' ',
  22. 'c:',
  23. 'c:\\',
  24. 'c:/',
  25. 'afile',
  26. 'c:\test\afile',
  27. 'c:\\test\\afile',
  28. 'c://test//afile',
  29. 'c:\test\afile\\',
  30. '/usr/lib/locale/en_US',
  31. '//usr/lib//locale/en_US',
  32. '\\',
  33. '\\\\',
  34. '/',
  35. '//',
  36. '///',
  37. '/usr/lib/locale/en_US/',
  38. 'c:\windows/system32\drivers/etc\hosts',
  39. '/usr\lib/locale\en_US',
  40. ' c:\test\adir\afile.txt',
  41. 'c:\test\adir\afile.txt ',
  42. ' c:\test\adir\afile.txt ',
  43. ' /usr/lib/locale/en_US',
  44. '/usr/lib/locale/en_US ',
  45. ' /usr/lib/locale/en_US ',
  46. ' c:',
  47. ' c:\test\adir\afile.txt',
  48. '/usr',
  49. '/usr/',
  50. );
  51. foreach ($paths as $path) {
  52. var_dump( dirname($path) );
  53. }
  54. ?>
  55. ===DONE===
  56. --EXPECTF--
  57. *** Testing dirname() : basic functionality ***
  58. string(0) ""
  59. string(1) "."
  60. string(2) "c:"
  61. string(3) "c:\"
  62. string(3) "c:\"
  63. string(1) "."
  64. string(7) "c:\test"
  65. string(7) "c:\test"
  66. string(8) "c://test"
  67. string(7) "c:\test"
  68. string(15) "/usr/lib/locale"
  69. string(17) "//usr/lib//locale"
  70. string(1) "\"
  71. string(1) "\"
  72. string(1) "\"
  73. string(1) "\"
  74. string(1) "\"
  75. string(15) "/usr/lib/locale"
  76. string(31) "c:\windows/system32\drivers/etc"
  77. string(15) "/usr\lib/locale"
  78. string(15) " c:\test\adir"
  79. string(12) "c:\test\adir"
  80. string(15) " c:\test\adir"
  81. string(18) " /usr/lib/locale"
  82. string(15) "/usr/lib/locale"
  83. string(18) " /usr/lib/locale"
  84. string(1) "."
  85. string(14) " c:\test\adir"
  86. string(1) "\"
  87. string(1) "\"
  88. ===DONE===