pathinfo_basic2.phpt 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268
  1. --TEST--
  2. Test pathinfo() 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. echo "*** Testing basic functions of pathinfo() ***\n";
  13. $paths = array (
  14. 'c:\..\dir1',
  15. 'c:\test\..\test2\.\adir\afile.txt',
  16. '/usr/include/../arpa/./inet.h',
  17. 'c:\test\adir\afile..txt',
  18. '/usr/include/arpa/inet..h',
  19. 'c:\test\adir\afile.',
  20. '/usr/include/arpa/inet.',
  21. '/usr/include/arpa/inet,h',
  22. 'c:afile.txt',
  23. '..\.\..\test\afile.txt',
  24. '.././../test/afile',
  25. '.',
  26. '..',
  27. '...',
  28. '/usr/lib/.../afile'
  29. );
  30. $counter = 1;
  31. /* loop through $paths to test each $path in the above array */
  32. foreach($paths as $path) {
  33. echo "-- Iteration $counter --\n";
  34. var_dump( pathinfo($path, PATHINFO_DIRNAME) );
  35. var_dump( pathinfo($path, PATHINFO_BASENAME) );
  36. var_dump( pathinfo($path, PATHINFO_EXTENSION) );
  37. var_dump( pathinfo($path, PATHINFO_FILENAME) );
  38. var_dump( pathinfo($path) );
  39. $counter++;
  40. }
  41. echo "Done\n";
  42. ?>
  43. --EXPECT--
  44. *** Testing basic functions of pathinfo() ***
  45. -- Iteration 1 --
  46. string(1) "."
  47. string(10) "c:\..\dir1"
  48. string(5) "\dir1"
  49. string(4) "c:\."
  50. array(4) {
  51. ["dirname"]=>
  52. string(1) "."
  53. ["basename"]=>
  54. string(10) "c:\..\dir1"
  55. ["extension"]=>
  56. string(5) "\dir1"
  57. ["filename"]=>
  58. string(4) "c:\."
  59. }
  60. -- Iteration 2 --
  61. string(1) "."
  62. string(33) "c:\test\..\test2\.\adir\afile.txt"
  63. string(3) "txt"
  64. string(29) "c:\test\..\test2\.\adir\afile"
  65. array(4) {
  66. ["dirname"]=>
  67. string(1) "."
  68. ["basename"]=>
  69. string(33) "c:\test\..\test2\.\adir\afile.txt"
  70. ["extension"]=>
  71. string(3) "txt"
  72. ["filename"]=>
  73. string(29) "c:\test\..\test2\.\adir\afile"
  74. }
  75. -- Iteration 3 --
  76. string(22) "/usr/include/../arpa/."
  77. string(6) "inet.h"
  78. string(1) "h"
  79. string(4) "inet"
  80. array(4) {
  81. ["dirname"]=>
  82. string(22) "/usr/include/../arpa/."
  83. ["basename"]=>
  84. string(6) "inet.h"
  85. ["extension"]=>
  86. string(1) "h"
  87. ["filename"]=>
  88. string(4) "inet"
  89. }
  90. -- Iteration 4 --
  91. string(1) "."
  92. string(23) "c:\test\adir\afile..txt"
  93. string(3) "txt"
  94. string(19) "c:\test\adir\afile."
  95. array(4) {
  96. ["dirname"]=>
  97. string(1) "."
  98. ["basename"]=>
  99. string(23) "c:\test\adir\afile..txt"
  100. ["extension"]=>
  101. string(3) "txt"
  102. ["filename"]=>
  103. string(19) "c:\test\adir\afile."
  104. }
  105. -- Iteration 5 --
  106. string(17) "/usr/include/arpa"
  107. string(7) "inet..h"
  108. string(1) "h"
  109. string(5) "inet."
  110. array(4) {
  111. ["dirname"]=>
  112. string(17) "/usr/include/arpa"
  113. ["basename"]=>
  114. string(7) "inet..h"
  115. ["extension"]=>
  116. string(1) "h"
  117. ["filename"]=>
  118. string(5) "inet."
  119. }
  120. -- Iteration 6 --
  121. string(1) "."
  122. string(19) "c:\test\adir\afile."
  123. string(0) ""
  124. string(18) "c:\test\adir\afile"
  125. array(4) {
  126. ["dirname"]=>
  127. string(1) "."
  128. ["basename"]=>
  129. string(19) "c:\test\adir\afile."
  130. ["extension"]=>
  131. string(0) ""
  132. ["filename"]=>
  133. string(18) "c:\test\adir\afile"
  134. }
  135. -- Iteration 7 --
  136. string(17) "/usr/include/arpa"
  137. string(5) "inet."
  138. string(0) ""
  139. string(4) "inet"
  140. array(4) {
  141. ["dirname"]=>
  142. string(17) "/usr/include/arpa"
  143. ["basename"]=>
  144. string(5) "inet."
  145. ["extension"]=>
  146. string(0) ""
  147. ["filename"]=>
  148. string(4) "inet"
  149. }
  150. -- Iteration 8 --
  151. string(17) "/usr/include/arpa"
  152. string(6) "inet,h"
  153. string(0) ""
  154. string(6) "inet,h"
  155. array(3) {
  156. ["dirname"]=>
  157. string(17) "/usr/include/arpa"
  158. ["basename"]=>
  159. string(6) "inet,h"
  160. ["filename"]=>
  161. string(6) "inet,h"
  162. }
  163. -- Iteration 9 --
  164. string(1) "."
  165. string(11) "c:afile.txt"
  166. string(3) "txt"
  167. string(7) "c:afile"
  168. array(4) {
  169. ["dirname"]=>
  170. string(1) "."
  171. ["basename"]=>
  172. string(11) "c:afile.txt"
  173. ["extension"]=>
  174. string(3) "txt"
  175. ["filename"]=>
  176. string(7) "c:afile"
  177. }
  178. -- Iteration 10 --
  179. string(1) "."
  180. string(22) "..\.\..\test\afile.txt"
  181. string(3) "txt"
  182. string(18) "..\.\..\test\afile"
  183. array(4) {
  184. ["dirname"]=>
  185. string(1) "."
  186. ["basename"]=>
  187. string(22) "..\.\..\test\afile.txt"
  188. ["extension"]=>
  189. string(3) "txt"
  190. ["filename"]=>
  191. string(18) "..\.\..\test\afile"
  192. }
  193. -- Iteration 11 --
  194. string(12) ".././../test"
  195. string(5) "afile"
  196. string(0) ""
  197. string(5) "afile"
  198. array(3) {
  199. ["dirname"]=>
  200. string(12) ".././../test"
  201. ["basename"]=>
  202. string(5) "afile"
  203. ["filename"]=>
  204. string(5) "afile"
  205. }
  206. -- Iteration 12 --
  207. string(1) "."
  208. string(1) "."
  209. string(0) ""
  210. string(0) ""
  211. array(4) {
  212. ["dirname"]=>
  213. string(1) "."
  214. ["basename"]=>
  215. string(1) "."
  216. ["extension"]=>
  217. string(0) ""
  218. ["filename"]=>
  219. string(0) ""
  220. }
  221. -- Iteration 13 --
  222. string(1) "."
  223. string(2) ".."
  224. string(0) ""
  225. string(1) "."
  226. array(4) {
  227. ["dirname"]=>
  228. string(1) "."
  229. ["basename"]=>
  230. string(2) ".."
  231. ["extension"]=>
  232. string(0) ""
  233. ["filename"]=>
  234. string(1) "."
  235. }
  236. -- Iteration 14 --
  237. string(1) "."
  238. string(3) "..."
  239. string(0) ""
  240. string(2) ".."
  241. array(4) {
  242. ["dirname"]=>
  243. string(1) "."
  244. ["basename"]=>
  245. string(3) "..."
  246. ["extension"]=>
  247. string(0) ""
  248. ["filename"]=>
  249. string(2) ".."
  250. }
  251. -- Iteration 15 --
  252. string(12) "/usr/lib/..."
  253. string(5) "afile"
  254. string(0) ""
  255. string(5) "afile"
  256. array(3) {
  257. ["dirname"]=>
  258. string(12) "/usr/lib/..."
  259. ["basename"]=>
  260. string(5) "afile"
  261. ["filename"]=>
  262. string(5) "afile"
  263. }
  264. Done