strncasecmp_variation6.phpt 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805
  1. --TEST--
  2. Test strncasecmp() function : usage variations - binary safe - all ASCII chars
  3. --FILE--
  4. <?php
  5. /* Test strncasecmp() function with binary values passed to 'str1' & 'str2' */
  6. echo "*** Test strncasecmp() function: with binary inputs ***\n";
  7. /* A binary function should work with all 256 characters that a character(8-bit) can take */
  8. echo "\n-- Checking with all 256 characters given, in binary format --\n";
  9. /* loop through to get all 256 character's equivalent binary value, and check working of strncasecmp() */
  10. $count = 1;
  11. for($ASCII = 0; $ASCII <= 255; $ASCII++) {
  12. $str1 = decbin($ASCII); //ASCII value in binary form
  13. $str2 = decbin( ord( chr($ASCII) ) ); //Getting equivalent ASCII value for the character in binary form
  14. echo "-- Iteration $count --\n";
  15. var_dump( strncasecmp($str1, $str2, 8) ); //comparing all the 8-bits; expected: int(0)
  16. var_dump( strncasecmp($str1, $str2, 4) ); //comparing only 4-bits; expected: int(0)
  17. $count++;
  18. }
  19. echo "\n-- Checking with out of character's range, given in binary format --\n";
  20. $str1 = decbin(256);
  21. $str2 = decbin( ord( chr(256) ));
  22. var_dump( strncasecmp($str1, $str2, 8) ); //comparing all the 8-bits; expected: int(1)
  23. echo "\n*** Done ***\n";
  24. ?>
  25. --EXPECT--
  26. *** Test strncasecmp() function: with binary inputs ***
  27. -- Checking with all 256 characters given, in binary format --
  28. -- Iteration 1 --
  29. int(0)
  30. int(0)
  31. -- Iteration 2 --
  32. int(0)
  33. int(0)
  34. -- Iteration 3 --
  35. int(0)
  36. int(0)
  37. -- Iteration 4 --
  38. int(0)
  39. int(0)
  40. -- Iteration 5 --
  41. int(0)
  42. int(0)
  43. -- Iteration 6 --
  44. int(0)
  45. int(0)
  46. -- Iteration 7 --
  47. int(0)
  48. int(0)
  49. -- Iteration 8 --
  50. int(0)
  51. int(0)
  52. -- Iteration 9 --
  53. int(0)
  54. int(0)
  55. -- Iteration 10 --
  56. int(0)
  57. int(0)
  58. -- Iteration 11 --
  59. int(0)
  60. int(0)
  61. -- Iteration 12 --
  62. int(0)
  63. int(0)
  64. -- Iteration 13 --
  65. int(0)
  66. int(0)
  67. -- Iteration 14 --
  68. int(0)
  69. int(0)
  70. -- Iteration 15 --
  71. int(0)
  72. int(0)
  73. -- Iteration 16 --
  74. int(0)
  75. int(0)
  76. -- Iteration 17 --
  77. int(0)
  78. int(0)
  79. -- Iteration 18 --
  80. int(0)
  81. int(0)
  82. -- Iteration 19 --
  83. int(0)
  84. int(0)
  85. -- Iteration 20 --
  86. int(0)
  87. int(0)
  88. -- Iteration 21 --
  89. int(0)
  90. int(0)
  91. -- Iteration 22 --
  92. int(0)
  93. int(0)
  94. -- Iteration 23 --
  95. int(0)
  96. int(0)
  97. -- Iteration 24 --
  98. int(0)
  99. int(0)
  100. -- Iteration 25 --
  101. int(0)
  102. int(0)
  103. -- Iteration 26 --
  104. int(0)
  105. int(0)
  106. -- Iteration 27 --
  107. int(0)
  108. int(0)
  109. -- Iteration 28 --
  110. int(0)
  111. int(0)
  112. -- Iteration 29 --
  113. int(0)
  114. int(0)
  115. -- Iteration 30 --
  116. int(0)
  117. int(0)
  118. -- Iteration 31 --
  119. int(0)
  120. int(0)
  121. -- Iteration 32 --
  122. int(0)
  123. int(0)
  124. -- Iteration 33 --
  125. int(0)
  126. int(0)
  127. -- Iteration 34 --
  128. int(0)
  129. int(0)
  130. -- Iteration 35 --
  131. int(0)
  132. int(0)
  133. -- Iteration 36 --
  134. int(0)
  135. int(0)
  136. -- Iteration 37 --
  137. int(0)
  138. int(0)
  139. -- Iteration 38 --
  140. int(0)
  141. int(0)
  142. -- Iteration 39 --
  143. int(0)
  144. int(0)
  145. -- Iteration 40 --
  146. int(0)
  147. int(0)
  148. -- Iteration 41 --
  149. int(0)
  150. int(0)
  151. -- Iteration 42 --
  152. int(0)
  153. int(0)
  154. -- Iteration 43 --
  155. int(0)
  156. int(0)
  157. -- Iteration 44 --
  158. int(0)
  159. int(0)
  160. -- Iteration 45 --
  161. int(0)
  162. int(0)
  163. -- Iteration 46 --
  164. int(0)
  165. int(0)
  166. -- Iteration 47 --
  167. int(0)
  168. int(0)
  169. -- Iteration 48 --
  170. int(0)
  171. int(0)
  172. -- Iteration 49 --
  173. int(0)
  174. int(0)
  175. -- Iteration 50 --
  176. int(0)
  177. int(0)
  178. -- Iteration 51 --
  179. int(0)
  180. int(0)
  181. -- Iteration 52 --
  182. int(0)
  183. int(0)
  184. -- Iteration 53 --
  185. int(0)
  186. int(0)
  187. -- Iteration 54 --
  188. int(0)
  189. int(0)
  190. -- Iteration 55 --
  191. int(0)
  192. int(0)
  193. -- Iteration 56 --
  194. int(0)
  195. int(0)
  196. -- Iteration 57 --
  197. int(0)
  198. int(0)
  199. -- Iteration 58 --
  200. int(0)
  201. int(0)
  202. -- Iteration 59 --
  203. int(0)
  204. int(0)
  205. -- Iteration 60 --
  206. int(0)
  207. int(0)
  208. -- Iteration 61 --
  209. int(0)
  210. int(0)
  211. -- Iteration 62 --
  212. int(0)
  213. int(0)
  214. -- Iteration 63 --
  215. int(0)
  216. int(0)
  217. -- Iteration 64 --
  218. int(0)
  219. int(0)
  220. -- Iteration 65 --
  221. int(0)
  222. int(0)
  223. -- Iteration 66 --
  224. int(0)
  225. int(0)
  226. -- Iteration 67 --
  227. int(0)
  228. int(0)
  229. -- Iteration 68 --
  230. int(0)
  231. int(0)
  232. -- Iteration 69 --
  233. int(0)
  234. int(0)
  235. -- Iteration 70 --
  236. int(0)
  237. int(0)
  238. -- Iteration 71 --
  239. int(0)
  240. int(0)
  241. -- Iteration 72 --
  242. int(0)
  243. int(0)
  244. -- Iteration 73 --
  245. int(0)
  246. int(0)
  247. -- Iteration 74 --
  248. int(0)
  249. int(0)
  250. -- Iteration 75 --
  251. int(0)
  252. int(0)
  253. -- Iteration 76 --
  254. int(0)
  255. int(0)
  256. -- Iteration 77 --
  257. int(0)
  258. int(0)
  259. -- Iteration 78 --
  260. int(0)
  261. int(0)
  262. -- Iteration 79 --
  263. int(0)
  264. int(0)
  265. -- Iteration 80 --
  266. int(0)
  267. int(0)
  268. -- Iteration 81 --
  269. int(0)
  270. int(0)
  271. -- Iteration 82 --
  272. int(0)
  273. int(0)
  274. -- Iteration 83 --
  275. int(0)
  276. int(0)
  277. -- Iteration 84 --
  278. int(0)
  279. int(0)
  280. -- Iteration 85 --
  281. int(0)
  282. int(0)
  283. -- Iteration 86 --
  284. int(0)
  285. int(0)
  286. -- Iteration 87 --
  287. int(0)
  288. int(0)
  289. -- Iteration 88 --
  290. int(0)
  291. int(0)
  292. -- Iteration 89 --
  293. int(0)
  294. int(0)
  295. -- Iteration 90 --
  296. int(0)
  297. int(0)
  298. -- Iteration 91 --
  299. int(0)
  300. int(0)
  301. -- Iteration 92 --
  302. int(0)
  303. int(0)
  304. -- Iteration 93 --
  305. int(0)
  306. int(0)
  307. -- Iteration 94 --
  308. int(0)
  309. int(0)
  310. -- Iteration 95 --
  311. int(0)
  312. int(0)
  313. -- Iteration 96 --
  314. int(0)
  315. int(0)
  316. -- Iteration 97 --
  317. int(0)
  318. int(0)
  319. -- Iteration 98 --
  320. int(0)
  321. int(0)
  322. -- Iteration 99 --
  323. int(0)
  324. int(0)
  325. -- Iteration 100 --
  326. int(0)
  327. int(0)
  328. -- Iteration 101 --
  329. int(0)
  330. int(0)
  331. -- Iteration 102 --
  332. int(0)
  333. int(0)
  334. -- Iteration 103 --
  335. int(0)
  336. int(0)
  337. -- Iteration 104 --
  338. int(0)
  339. int(0)
  340. -- Iteration 105 --
  341. int(0)
  342. int(0)
  343. -- Iteration 106 --
  344. int(0)
  345. int(0)
  346. -- Iteration 107 --
  347. int(0)
  348. int(0)
  349. -- Iteration 108 --
  350. int(0)
  351. int(0)
  352. -- Iteration 109 --
  353. int(0)
  354. int(0)
  355. -- Iteration 110 --
  356. int(0)
  357. int(0)
  358. -- Iteration 111 --
  359. int(0)
  360. int(0)
  361. -- Iteration 112 --
  362. int(0)
  363. int(0)
  364. -- Iteration 113 --
  365. int(0)
  366. int(0)
  367. -- Iteration 114 --
  368. int(0)
  369. int(0)
  370. -- Iteration 115 --
  371. int(0)
  372. int(0)
  373. -- Iteration 116 --
  374. int(0)
  375. int(0)
  376. -- Iteration 117 --
  377. int(0)
  378. int(0)
  379. -- Iteration 118 --
  380. int(0)
  381. int(0)
  382. -- Iteration 119 --
  383. int(0)
  384. int(0)
  385. -- Iteration 120 --
  386. int(0)
  387. int(0)
  388. -- Iteration 121 --
  389. int(0)
  390. int(0)
  391. -- Iteration 122 --
  392. int(0)
  393. int(0)
  394. -- Iteration 123 --
  395. int(0)
  396. int(0)
  397. -- Iteration 124 --
  398. int(0)
  399. int(0)
  400. -- Iteration 125 --
  401. int(0)
  402. int(0)
  403. -- Iteration 126 --
  404. int(0)
  405. int(0)
  406. -- Iteration 127 --
  407. int(0)
  408. int(0)
  409. -- Iteration 128 --
  410. int(0)
  411. int(0)
  412. -- Iteration 129 --
  413. int(0)
  414. int(0)
  415. -- Iteration 130 --
  416. int(0)
  417. int(0)
  418. -- Iteration 131 --
  419. int(0)
  420. int(0)
  421. -- Iteration 132 --
  422. int(0)
  423. int(0)
  424. -- Iteration 133 --
  425. int(0)
  426. int(0)
  427. -- Iteration 134 --
  428. int(0)
  429. int(0)
  430. -- Iteration 135 --
  431. int(0)
  432. int(0)
  433. -- Iteration 136 --
  434. int(0)
  435. int(0)
  436. -- Iteration 137 --
  437. int(0)
  438. int(0)
  439. -- Iteration 138 --
  440. int(0)
  441. int(0)
  442. -- Iteration 139 --
  443. int(0)
  444. int(0)
  445. -- Iteration 140 --
  446. int(0)
  447. int(0)
  448. -- Iteration 141 --
  449. int(0)
  450. int(0)
  451. -- Iteration 142 --
  452. int(0)
  453. int(0)
  454. -- Iteration 143 --
  455. int(0)
  456. int(0)
  457. -- Iteration 144 --
  458. int(0)
  459. int(0)
  460. -- Iteration 145 --
  461. int(0)
  462. int(0)
  463. -- Iteration 146 --
  464. int(0)
  465. int(0)
  466. -- Iteration 147 --
  467. int(0)
  468. int(0)
  469. -- Iteration 148 --
  470. int(0)
  471. int(0)
  472. -- Iteration 149 --
  473. int(0)
  474. int(0)
  475. -- Iteration 150 --
  476. int(0)
  477. int(0)
  478. -- Iteration 151 --
  479. int(0)
  480. int(0)
  481. -- Iteration 152 --
  482. int(0)
  483. int(0)
  484. -- Iteration 153 --
  485. int(0)
  486. int(0)
  487. -- Iteration 154 --
  488. int(0)
  489. int(0)
  490. -- Iteration 155 --
  491. int(0)
  492. int(0)
  493. -- Iteration 156 --
  494. int(0)
  495. int(0)
  496. -- Iteration 157 --
  497. int(0)
  498. int(0)
  499. -- Iteration 158 --
  500. int(0)
  501. int(0)
  502. -- Iteration 159 --
  503. int(0)
  504. int(0)
  505. -- Iteration 160 --
  506. int(0)
  507. int(0)
  508. -- Iteration 161 --
  509. int(0)
  510. int(0)
  511. -- Iteration 162 --
  512. int(0)
  513. int(0)
  514. -- Iteration 163 --
  515. int(0)
  516. int(0)
  517. -- Iteration 164 --
  518. int(0)
  519. int(0)
  520. -- Iteration 165 --
  521. int(0)
  522. int(0)
  523. -- Iteration 166 --
  524. int(0)
  525. int(0)
  526. -- Iteration 167 --
  527. int(0)
  528. int(0)
  529. -- Iteration 168 --
  530. int(0)
  531. int(0)
  532. -- Iteration 169 --
  533. int(0)
  534. int(0)
  535. -- Iteration 170 --
  536. int(0)
  537. int(0)
  538. -- Iteration 171 --
  539. int(0)
  540. int(0)
  541. -- Iteration 172 --
  542. int(0)
  543. int(0)
  544. -- Iteration 173 --
  545. int(0)
  546. int(0)
  547. -- Iteration 174 --
  548. int(0)
  549. int(0)
  550. -- Iteration 175 --
  551. int(0)
  552. int(0)
  553. -- Iteration 176 --
  554. int(0)
  555. int(0)
  556. -- Iteration 177 --
  557. int(0)
  558. int(0)
  559. -- Iteration 178 --
  560. int(0)
  561. int(0)
  562. -- Iteration 179 --
  563. int(0)
  564. int(0)
  565. -- Iteration 180 --
  566. int(0)
  567. int(0)
  568. -- Iteration 181 --
  569. int(0)
  570. int(0)
  571. -- Iteration 182 --
  572. int(0)
  573. int(0)
  574. -- Iteration 183 --
  575. int(0)
  576. int(0)
  577. -- Iteration 184 --
  578. int(0)
  579. int(0)
  580. -- Iteration 185 --
  581. int(0)
  582. int(0)
  583. -- Iteration 186 --
  584. int(0)
  585. int(0)
  586. -- Iteration 187 --
  587. int(0)
  588. int(0)
  589. -- Iteration 188 --
  590. int(0)
  591. int(0)
  592. -- Iteration 189 --
  593. int(0)
  594. int(0)
  595. -- Iteration 190 --
  596. int(0)
  597. int(0)
  598. -- Iteration 191 --
  599. int(0)
  600. int(0)
  601. -- Iteration 192 --
  602. int(0)
  603. int(0)
  604. -- Iteration 193 --
  605. int(0)
  606. int(0)
  607. -- Iteration 194 --
  608. int(0)
  609. int(0)
  610. -- Iteration 195 --
  611. int(0)
  612. int(0)
  613. -- Iteration 196 --
  614. int(0)
  615. int(0)
  616. -- Iteration 197 --
  617. int(0)
  618. int(0)
  619. -- Iteration 198 --
  620. int(0)
  621. int(0)
  622. -- Iteration 199 --
  623. int(0)
  624. int(0)
  625. -- Iteration 200 --
  626. int(0)
  627. int(0)
  628. -- Iteration 201 --
  629. int(0)
  630. int(0)
  631. -- Iteration 202 --
  632. int(0)
  633. int(0)
  634. -- Iteration 203 --
  635. int(0)
  636. int(0)
  637. -- Iteration 204 --
  638. int(0)
  639. int(0)
  640. -- Iteration 205 --
  641. int(0)
  642. int(0)
  643. -- Iteration 206 --
  644. int(0)
  645. int(0)
  646. -- Iteration 207 --
  647. int(0)
  648. int(0)
  649. -- Iteration 208 --
  650. int(0)
  651. int(0)
  652. -- Iteration 209 --
  653. int(0)
  654. int(0)
  655. -- Iteration 210 --
  656. int(0)
  657. int(0)
  658. -- Iteration 211 --
  659. int(0)
  660. int(0)
  661. -- Iteration 212 --
  662. int(0)
  663. int(0)
  664. -- Iteration 213 --
  665. int(0)
  666. int(0)
  667. -- Iteration 214 --
  668. int(0)
  669. int(0)
  670. -- Iteration 215 --
  671. int(0)
  672. int(0)
  673. -- Iteration 216 --
  674. int(0)
  675. int(0)
  676. -- Iteration 217 --
  677. int(0)
  678. int(0)
  679. -- Iteration 218 --
  680. int(0)
  681. int(0)
  682. -- Iteration 219 --
  683. int(0)
  684. int(0)
  685. -- Iteration 220 --
  686. int(0)
  687. int(0)
  688. -- Iteration 221 --
  689. int(0)
  690. int(0)
  691. -- Iteration 222 --
  692. int(0)
  693. int(0)
  694. -- Iteration 223 --
  695. int(0)
  696. int(0)
  697. -- Iteration 224 --
  698. int(0)
  699. int(0)
  700. -- Iteration 225 --
  701. int(0)
  702. int(0)
  703. -- Iteration 226 --
  704. int(0)
  705. int(0)
  706. -- Iteration 227 --
  707. int(0)
  708. int(0)
  709. -- Iteration 228 --
  710. int(0)
  711. int(0)
  712. -- Iteration 229 --
  713. int(0)
  714. int(0)
  715. -- Iteration 230 --
  716. int(0)
  717. int(0)
  718. -- Iteration 231 --
  719. int(0)
  720. int(0)
  721. -- Iteration 232 --
  722. int(0)
  723. int(0)
  724. -- Iteration 233 --
  725. int(0)
  726. int(0)
  727. -- Iteration 234 --
  728. int(0)
  729. int(0)
  730. -- Iteration 235 --
  731. int(0)
  732. int(0)
  733. -- Iteration 236 --
  734. int(0)
  735. int(0)
  736. -- Iteration 237 --
  737. int(0)
  738. int(0)
  739. -- Iteration 238 --
  740. int(0)
  741. int(0)
  742. -- Iteration 239 --
  743. int(0)
  744. int(0)
  745. -- Iteration 240 --
  746. int(0)
  747. int(0)
  748. -- Iteration 241 --
  749. int(0)
  750. int(0)
  751. -- Iteration 242 --
  752. int(0)
  753. int(0)
  754. -- Iteration 243 --
  755. int(0)
  756. int(0)
  757. -- Iteration 244 --
  758. int(0)
  759. int(0)
  760. -- Iteration 245 --
  761. int(0)
  762. int(0)
  763. -- Iteration 246 --
  764. int(0)
  765. int(0)
  766. -- Iteration 247 --
  767. int(0)
  768. int(0)
  769. -- Iteration 248 --
  770. int(0)
  771. int(0)
  772. -- Iteration 249 --
  773. int(0)
  774. int(0)
  775. -- Iteration 250 --
  776. int(0)
  777. int(0)
  778. -- Iteration 251 --
  779. int(0)
  780. int(0)
  781. -- Iteration 252 --
  782. int(0)
  783. int(0)
  784. -- Iteration 253 --
  785. int(0)
  786. int(0)
  787. -- Iteration 254 --
  788. int(0)
  789. int(0)
  790. -- Iteration 255 --
  791. int(0)
  792. int(0)
  793. -- Iteration 256 --
  794. int(0)
  795. int(0)
  796. -- Checking with out of character's range, given in binary format --
  797. int(1)
  798. *** Done ***