1--TEST-- 2Test array_search() function : usage variations - different needle values 3--FILE-- 4<?php 5/* Test array_search() with different possible needle values */ 6 7echo "*** Testing array_search() with different needle values ***\n"; 8$arrays = array ( 9 array(0), 10 array("a" => "A", 2 => "B", "C" => 3, 4 => 4, "one" => 1, "" => NULL, "b", "ab", "abcd"), 11 array(4, array(1, 2 => 3), "one" => 1, "5" => 5 ), 12 array(-1, -2, -3, -4, -2.989888, "-0.005" => "neg0.005", 2 => "float2", "-.9" => -.9), 13 array(TRUE, FALSE), 14 array("", array()), 15 array("abcd\x00abcd\x00abcd"), 16 array("abcd\tabcd\nabcd\rabcd\0abcdefghij") 17); 18 19$array_compare = array ( 20 4, 21 "4", 22 4.00, 23 "b", 24 "5", 25 -2, 26 -2.0, 27 -2.98989, 28 "-.9", 29 "True", 30 "", 31 array(), 32 NULL, 33 "ab", 34 "abcd", 35 0.0, 36 -0, 37 "abcd\x00abcd\x00abcd" 38); 39/* loop to check if elements in $array_compare exist in $arrays 40 using array_search() */ 41$counter = 1; 42foreach($arrays as $array) { 43 foreach($array_compare as $compare) { 44 echo "-- Iteration $counter --\n"; 45 //strict option OFF 46 var_dump(array_search($compare,$array)); 47 //strict option ON 48 var_dump(array_search($compare,$array,TRUE)); 49 //strict option OFF 50 var_dump(array_search($compare,$array,FALSE)); 51 $counter++; 52 } 53} 54 55echo "Done\n"; 56?> 57--EXPECT-- 58*** Testing array_search() with different needle values *** 59-- Iteration 1 -- 60bool(false) 61bool(false) 62bool(false) 63-- Iteration 2 -- 64bool(false) 65bool(false) 66bool(false) 67-- Iteration 3 -- 68bool(false) 69bool(false) 70bool(false) 71-- Iteration 4 -- 72bool(false) 73bool(false) 74bool(false) 75-- Iteration 5 -- 76bool(false) 77bool(false) 78bool(false) 79-- Iteration 6 -- 80bool(false) 81bool(false) 82bool(false) 83-- Iteration 7 -- 84bool(false) 85bool(false) 86bool(false) 87-- Iteration 8 -- 88bool(false) 89bool(false) 90bool(false) 91-- Iteration 9 -- 92bool(false) 93bool(false) 94bool(false) 95-- Iteration 10 -- 96bool(false) 97bool(false) 98bool(false) 99-- Iteration 11 -- 100bool(false) 101bool(false) 102bool(false) 103-- Iteration 12 -- 104bool(false) 105bool(false) 106bool(false) 107-- Iteration 13 -- 108int(0) 109bool(false) 110int(0) 111-- Iteration 14 -- 112bool(false) 113bool(false) 114bool(false) 115-- Iteration 15 -- 116bool(false) 117bool(false) 118bool(false) 119-- Iteration 16 -- 120int(0) 121bool(false) 122int(0) 123-- Iteration 17 -- 124int(0) 125int(0) 126int(0) 127-- Iteration 18 -- 128bool(false) 129bool(false) 130bool(false) 131-- Iteration 19 -- 132int(4) 133int(4) 134int(4) 135-- Iteration 20 -- 136int(4) 137bool(false) 138int(4) 139-- Iteration 21 -- 140int(4) 141bool(false) 142int(4) 143-- Iteration 22 -- 144int(5) 145int(5) 146int(5) 147-- Iteration 23 -- 148bool(false) 149bool(false) 150bool(false) 151-- Iteration 24 -- 152bool(false) 153bool(false) 154bool(false) 155-- Iteration 25 -- 156bool(false) 157bool(false) 158bool(false) 159-- Iteration 26 -- 160bool(false) 161bool(false) 162bool(false) 163-- Iteration 27 -- 164bool(false) 165bool(false) 166bool(false) 167-- Iteration 28 -- 168bool(false) 169bool(false) 170bool(false) 171-- Iteration 29 -- 172string(0) "" 173bool(false) 174string(0) "" 175-- Iteration 30 -- 176string(0) "" 177bool(false) 178string(0) "" 179-- Iteration 31 -- 180string(0) "" 181string(0) "" 182string(0) "" 183-- Iteration 32 -- 184int(6) 185int(6) 186int(6) 187-- Iteration 33 -- 188int(7) 189int(7) 190int(7) 191-- Iteration 34 -- 192string(0) "" 193bool(false) 194string(0) "" 195-- Iteration 35 -- 196string(0) "" 197bool(false) 198string(0) "" 199-- Iteration 36 -- 200bool(false) 201bool(false) 202bool(false) 203-- Iteration 37 -- 204int(0) 205int(0) 206int(0) 207-- Iteration 38 -- 208int(0) 209bool(false) 210int(0) 211-- Iteration 39 -- 212int(0) 213bool(false) 214int(0) 215-- Iteration 40 -- 216bool(false) 217bool(false) 218bool(false) 219-- Iteration 41 -- 220int(5) 221bool(false) 222int(5) 223-- Iteration 42 -- 224bool(false) 225bool(false) 226bool(false) 227-- Iteration 43 -- 228bool(false) 229bool(false) 230bool(false) 231-- Iteration 44 -- 232bool(false) 233bool(false) 234bool(false) 235-- Iteration 45 -- 236bool(false) 237bool(false) 238bool(false) 239-- Iteration 46 -- 240bool(false) 241bool(false) 242bool(false) 243-- Iteration 47 -- 244bool(false) 245bool(false) 246bool(false) 247-- Iteration 48 -- 248bool(false) 249bool(false) 250bool(false) 251-- Iteration 49 -- 252bool(false) 253bool(false) 254bool(false) 255-- Iteration 50 -- 256bool(false) 257bool(false) 258bool(false) 259-- Iteration 51 -- 260bool(false) 261bool(false) 262bool(false) 263-- Iteration 52 -- 264bool(false) 265bool(false) 266bool(false) 267-- Iteration 53 -- 268bool(false) 269bool(false) 270bool(false) 271-- Iteration 54 -- 272bool(false) 273bool(false) 274bool(false) 275-- Iteration 55 -- 276bool(false) 277bool(false) 278bool(false) 279-- Iteration 56 -- 280bool(false) 281bool(false) 282bool(false) 283-- Iteration 57 -- 284bool(false) 285bool(false) 286bool(false) 287-- Iteration 58 -- 288bool(false) 289bool(false) 290bool(false) 291-- Iteration 59 -- 292bool(false) 293bool(false) 294bool(false) 295-- Iteration 60 -- 296int(1) 297int(1) 298int(1) 299-- Iteration 61 -- 300int(1) 301bool(false) 302int(1) 303-- Iteration 62 -- 304bool(false) 305bool(false) 306bool(false) 307-- Iteration 63 -- 308string(3) "-.9" 309bool(false) 310string(3) "-.9" 311-- Iteration 64 -- 312bool(false) 313bool(false) 314bool(false) 315-- Iteration 65 -- 316bool(false) 317bool(false) 318bool(false) 319-- Iteration 66 -- 320bool(false) 321bool(false) 322bool(false) 323-- Iteration 67 -- 324bool(false) 325bool(false) 326bool(false) 327-- Iteration 68 -- 328bool(false) 329bool(false) 330bool(false) 331-- Iteration 69 -- 332bool(false) 333bool(false) 334bool(false) 335-- Iteration 70 -- 336bool(false) 337bool(false) 338bool(false) 339-- Iteration 71 -- 340bool(false) 341bool(false) 342bool(false) 343-- Iteration 72 -- 344bool(false) 345bool(false) 346bool(false) 347-- Iteration 73 -- 348int(0) 349bool(false) 350int(0) 351-- Iteration 74 -- 352int(0) 353bool(false) 354int(0) 355-- Iteration 75 -- 356int(0) 357bool(false) 358int(0) 359-- Iteration 76 -- 360int(0) 361bool(false) 362int(0) 363-- Iteration 77 -- 364int(0) 365bool(false) 366int(0) 367-- Iteration 78 -- 368int(0) 369bool(false) 370int(0) 371-- Iteration 79 -- 372int(0) 373bool(false) 374int(0) 375-- Iteration 80 -- 376int(0) 377bool(false) 378int(0) 379-- Iteration 81 -- 380int(0) 381bool(false) 382int(0) 383-- Iteration 82 -- 384int(0) 385bool(false) 386int(0) 387-- Iteration 83 -- 388int(1) 389bool(false) 390int(1) 391-- Iteration 84 -- 392int(1) 393bool(false) 394int(1) 395-- Iteration 85 -- 396int(1) 397bool(false) 398int(1) 399-- Iteration 86 -- 400int(0) 401bool(false) 402int(0) 403-- Iteration 87 -- 404int(0) 405bool(false) 406int(0) 407-- Iteration 88 -- 408int(1) 409bool(false) 410int(1) 411-- Iteration 89 -- 412int(1) 413bool(false) 414int(1) 415-- Iteration 90 -- 416int(0) 417bool(false) 418int(0) 419-- Iteration 91 -- 420bool(false) 421bool(false) 422bool(false) 423-- Iteration 92 -- 424bool(false) 425bool(false) 426bool(false) 427-- Iteration 93 -- 428bool(false) 429bool(false) 430bool(false) 431-- Iteration 94 -- 432bool(false) 433bool(false) 434bool(false) 435-- Iteration 95 -- 436bool(false) 437bool(false) 438bool(false) 439-- Iteration 96 -- 440bool(false) 441bool(false) 442bool(false) 443-- Iteration 97 -- 444bool(false) 445bool(false) 446bool(false) 447-- Iteration 98 -- 448bool(false) 449bool(false) 450bool(false) 451-- Iteration 99 -- 452bool(false) 453bool(false) 454bool(false) 455-- Iteration 100 -- 456bool(false) 457bool(false) 458bool(false) 459-- Iteration 101 -- 460int(0) 461int(0) 462int(0) 463-- Iteration 102 -- 464int(1) 465int(1) 466int(1) 467-- Iteration 103 -- 468int(0) 469bool(false) 470int(0) 471-- Iteration 104 -- 472bool(false) 473bool(false) 474bool(false) 475-- Iteration 105 -- 476bool(false) 477bool(false) 478bool(false) 479-- Iteration 106 -- 480bool(false) 481bool(false) 482bool(false) 483-- Iteration 107 -- 484bool(false) 485bool(false) 486bool(false) 487-- Iteration 108 -- 488bool(false) 489bool(false) 490bool(false) 491-- Iteration 109 -- 492bool(false) 493bool(false) 494bool(false) 495-- Iteration 110 -- 496bool(false) 497bool(false) 498bool(false) 499-- Iteration 111 -- 500bool(false) 501bool(false) 502bool(false) 503-- Iteration 112 -- 504bool(false) 505bool(false) 506bool(false) 507-- Iteration 113 -- 508bool(false) 509bool(false) 510bool(false) 511-- Iteration 114 -- 512bool(false) 513bool(false) 514bool(false) 515-- Iteration 115 -- 516bool(false) 517bool(false) 518bool(false) 519-- Iteration 116 -- 520bool(false) 521bool(false) 522bool(false) 523-- Iteration 117 -- 524bool(false) 525bool(false) 526bool(false) 527-- Iteration 118 -- 528bool(false) 529bool(false) 530bool(false) 531-- Iteration 119 -- 532bool(false) 533bool(false) 534bool(false) 535-- Iteration 120 -- 536bool(false) 537bool(false) 538bool(false) 539-- Iteration 121 -- 540bool(false) 541bool(false) 542bool(false) 543-- Iteration 122 -- 544bool(false) 545bool(false) 546bool(false) 547-- Iteration 123 -- 548bool(false) 549bool(false) 550bool(false) 551-- Iteration 124 -- 552bool(false) 553bool(false) 554bool(false) 555-- Iteration 125 -- 556bool(false) 557bool(false) 558bool(false) 559-- Iteration 126 -- 560int(0) 561int(0) 562int(0) 563-- Iteration 127 -- 564bool(false) 565bool(false) 566bool(false) 567-- Iteration 128 -- 568bool(false) 569bool(false) 570bool(false) 571-- Iteration 129 -- 572bool(false) 573bool(false) 574bool(false) 575-- Iteration 130 -- 576bool(false) 577bool(false) 578bool(false) 579-- Iteration 131 -- 580bool(false) 581bool(false) 582bool(false) 583-- Iteration 132 -- 584bool(false) 585bool(false) 586bool(false) 587-- Iteration 133 -- 588bool(false) 589bool(false) 590bool(false) 591-- Iteration 134 -- 592bool(false) 593bool(false) 594bool(false) 595-- Iteration 135 -- 596bool(false) 597bool(false) 598bool(false) 599-- Iteration 136 -- 600bool(false) 601bool(false) 602bool(false) 603-- Iteration 137 -- 604bool(false) 605bool(false) 606bool(false) 607-- Iteration 138 -- 608bool(false) 609bool(false) 610bool(false) 611-- Iteration 139 -- 612bool(false) 613bool(false) 614bool(false) 615-- Iteration 140 -- 616bool(false) 617bool(false) 618bool(false) 619-- Iteration 141 -- 620bool(false) 621bool(false) 622bool(false) 623-- Iteration 142 -- 624bool(false) 625bool(false) 626bool(false) 627-- Iteration 143 -- 628bool(false) 629bool(false) 630bool(false) 631-- Iteration 144 -- 632bool(false) 633bool(false) 634bool(false) 635Done 636