PageRenderTime 43ms CodeModel.GetById 17ms RepoModel.GetById 0ms app.codeStats 0ms

/2.0/Tests/Arrays/sort.php

#
PHP | 296 lines | 277 code | 19 blank | 0 comment | 1 complexity | c13c1c541ea964580cd8844d528da94f MD5 | raw file
Possible License(s): CPL-1.0, GPL-2.0, CC-BY-SA-3.0, MPL-2.0-no-copyleft-exception, Apache-2.0
  1. [expect]
  2. sort regular:
  3. array
  4. (
  5. [0] => 0x10
  6. [1] => 10x
  7. [2] => 20x
  8. [3] => ach0
  9. [4] => add1
  10. [5] => x10
  11. [6] => 0
  12. [7] => x2
  13. [8] => 1
  14. [9] => 1
  15. [10] => 8
  16. )
  17. sort numeric:
  18. array
  19. (
  20. [0] => x10
  21. [1] => 0
  22. [2] => x2
  23. [3] => ach0
  24. [4] => add1
  25. [5] => 1
  26. [6] => 1
  27. [7] => 8
  28. [8] => 10x
  29. [9] => 0x10
  30. [10] => 20x
  31. )
  32. sort string:
  33. array
  34. (
  35. [0] => 0
  36. [1] => 0x10
  37. [2] => 1
  38. [3] => 1
  39. [4] => 10x
  40. [5] => 20x
  41. [6] => 8
  42. [7] => ach0
  43. [8] => add1
  44. [9] => x10
  45. [10] => x2
  46. )
  47. sort locale:
  48. array
  49. (
  50. [0] => 0
  51. [1] => 0x10
  52. [2] => 1
  53. [3] => 1
  54. [4] => 10x
  55. [5] => 20x
  56. [6] => 8
  57. [7] => add1
  58. [8] => ach0
  59. [9] => x10
  60. [10] => x2
  61. )
  62. ksort regular:
  63. array
  64. (
  65. [x] => 8
  66. [z] => 1
  67. [0] => x10
  68. [1] => 10x
  69. [2] => 20x
  70. [3] => x2
  71. [4] => 0x10
  72. [5] => ach0
  73. [6] => add1
  74. [10a] => 0
  75. [2b] => 1
  76. )
  77. ksort numeric:
  78. array
  79. (
  80. [x] => 8
  81. [z] => 1
  82. [0] => x10
  83. [1] => 10x
  84. [2b] => 1
  85. [2] => 20x
  86. [3] => x2
  87. [4] => 0x10
  88. [5] => ach0
  89. [6] => add1
  90. [10a] => 0
  91. )
  92. ksort string:
  93. array
  94. (
  95. [0] => x10
  96. [1] => 10x
  97. [10a] => 0
  98. [2] => 20x
  99. [2b] => 1
  100. [3] => x2
  101. [4] => 0x10
  102. [5] => ach0
  103. [6] => add1
  104. [x] => 8
  105. [z] => 1
  106. )
  107. ksort locale:
  108. array
  109. (
  110. [0] => x10
  111. [1] => 10x
  112. [10a] => 0
  113. [2] => 20x
  114. [2b] => 1
  115. [3] => x2
  116. [4] => 0x10
  117. [5] => ach0
  118. [6] => add1
  119. [x] => 8
  120. [z] => 1
  121. )
  122. asort regular:
  123. array
  124. (
  125. [4] => 0x10
  126. [1] => 10x
  127. [2] => 20x
  128. [5] => ach0
  129. [6] => add1
  130. [0] => x10
  131. [10a] => 0
  132. [3] => x2
  133. [z] => 1
  134. [2b] => 1
  135. [x] => 8
  136. )
  137. asort numeric:
  138. array
  139. (
  140. [0] => x10
  141. [10a] => 0
  142. [3] => x2
  143. [5] => ach0
  144. [6] => add1
  145. [z] => 1
  146. [2b] => 1
  147. [x] => 8
  148. [1] => 10x
  149. [4] => 0x10
  150. [2] => 20x
  151. )
  152. asort string:
  153. array
  154. (
  155. [10a] => 0
  156. [4] => 0x10
  157. [z] => 1
  158. [2b] => 1
  159. [1] => 10x
  160. [2] => 20x
  161. [x] => 8
  162. [5] => ach0
  163. [6] => add1
  164. [0] => x10
  165. [3] => x2
  166. )
  167. asort locale:
  168. array
  169. (
  170. [10a] => 0
  171. [4] => 0x10
  172. [z] => 1
  173. [2b] => 1
  174. [1] => 10x
  175. [2] => 20x
  176. [x] => 8
  177. [6] => add1
  178. [5] => ach0
  179. [0] => x10
  180. [3] => x2
  181. )
  182. rsort regular:
  183. array
  184. (
  185. [0] => 8
  186. [1] => 1
  187. [2] => 1
  188. [3] => x2
  189. [4] => x10
  190. [5] => 0
  191. [6] => add1
  192. [7] => ach0
  193. [8] => 20x
  194. [9] => 10x
  195. [10] => 0x10
  196. )
  197. rsort numeric:
  198. array
  199. (
  200. [0] => 20x
  201. [1] => 0x10
  202. [2] => 10x
  203. [3] => 8
  204. [4] => 1
  205. [5] => 1
  206. [6] => x10
  207. [7] => 0
  208. [8] => x2
  209. [9] => ach0
  210. [10] => add1
  211. )
  212. rsort string:
  213. array
  214. (
  215. [0] => x2
  216. [1] => x10
  217. [2] => add1
  218. [3] => ach0
  219. [4] => 8
  220. [5] => 20x
  221. [6] => 10x
  222. [7] => 1
  223. [8] => 1
  224. [9] => 0x10
  225. [10] => 0
  226. )
  227. rsort locale:
  228. array
  229. (
  230. [0] => x2
  231. [1] => x10
  232. [2] => ach0
  233. [3] => add1
  234. [4] => 8
  235. [5] => 20x
  236. [6] => 10x
  237. [7] => 1
  238. [8] => 1
  239. [9] => 0x10
  240. [10] => 0
  241. )
  242. natsort:
  243. array
  244. (
  245. [10a] => 0
  246. [4] => 0x10
  247. [z] => 1
  248. [2b] => 1
  249. [x] => 8
  250. [1] => 10x
  251. [2] => 20x
  252. [5] => ach0
  253. [6] => add1
  254. [3] => x2
  255. [0] => x10
  256. )
  257. [file]
  258. <?
  259. setlocale(LC_COLLATE,"cs-CZ");
  260. $sorts = array("sort","ksort","asort","rsort");
  261. $types = array(SORT_REGULAR => "regular",SORT_NUMERIC => "numeric",SORT_STRING => "string",SORT_LOCALE_STRING => "locale");
  262. $array = array("x" => 8,"z" => 1,"2b" => 1,"x10","10a" => 0,"10x","20x","x2","0x10","ach0","add1");
  263. for ($i=0;$i<count($sorts);$i++)
  264. {
  265. foreach($types as $type => $type_name)
  266. {
  267. echo "\n{$sorts[$i]} $type_name:\n";
  268. $x = $array;
  269. $sorts[$i]($x,$type);
  270. print_r($x);
  271. }
  272. }
  273. echo "\nnatsort:\n";
  274. $x = $array;
  275. natsort($x);
  276. print_r($x);
  277. ?>