dirname_basic.phpt 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  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 Not 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(1) "."
  61. string(1) "."
  62. string(1) "."
  63. string(1) "."
  64. string(1) "."
  65. string(1) "."
  66. string(8) "c://test"
  67. string(1) "."
  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(27) "c:\windows/system32\drivers"
  77. string(8) "/usr\lib"
  78. string(1) "."
  79. string(1) "."
  80. string(1) "."
  81. string(18) " /usr/lib/locale"
  82. string(15) "/usr/lib/locale"
  83. string(18) " /usr/lib/locale"
  84. string(1) "."
  85. string(1) "."
  86. string(1) "/"
  87. string(1) "/"
  88. ===DONE===