Return to rand_variation2.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / math |
1.1 misho 1: --TEST-- 2: Test rand() function : usage variations - different data types as $max argument 3: --FILE-- 4: <?php 5: /* Prototype : int rand ([ int $min , int $max ] ) 6: * Description: Generate a random integer. 7: * Source code: ext/standard/rand.c 8: */ 9: 10: echo "*** Testing rand) : usage variations ***\n"; 11: 12: //get an unset variable 13: $unset_var = 10; 14: unset ($unset_var); 15: 16: // heredoc string 17: $heredoc = <<<EOT 18: abc 19: xyz 20: EOT; 21: 22: // get a class 23: class classA 24: { 25: } 26: 27: // get a resource variable 28: $fp = fopen(__FILE__, "r"); 29: 30: $inputs = array( 31: // int data 32: /*1*/ 0, 33: 1, 34: 12345, 35: -2345, 36: 2147483647, 37: 38: // float data 39: /*6*/ 10.5, 40: -10.5, 41: 12.3456789000e10, 42: 12.3456789000E-10, 43: .5, 44: 45: // null data 46: /*11*/ NULL, 47: null, 48: 49: // boolean data 50: /*13*/ true, 51: false, 52: TRUE, 53: FALSE, 54: 55: // empty data 56: /*17*/ "", 57: '', 58: array(), 59: 60: // string data 61: /*20*/ "abcxyz", 62: 'abcxyz', 63: $heredoc, 64: 65: // object data 66: /*23*/ new classA(), 67: 68: // undefined data 69: /*24*/ @$undefined_var, 70: 71: // unset data 72: /*25*/ @$unset_var, 73: 74: // resource variable 75: /*26*/ $fp 76: ); 77: 78: // loop through each element of $inputs to check the behaviour of rand() 79: $iterator = 1; 80: foreach($inputs as $input) { 81: echo "\n-- Iteration $iterator --\n"; 82: var_dump(rand(100, $input)); 83: $iterator++; 84: }; 85: fclose($fp); 86: ?> 87: ===Done=== 88: --EXPECTF-- 89: *** Testing rand) : usage variations *** 90: 91: -- Iteration 1 -- 92: int(%i) 93: 94: -- Iteration 2 -- 95: int(%i) 96: 97: -- Iteration 3 -- 98: int(%i) 99: 100: -- Iteration 4 -- 101: int(%i) 102: 103: -- Iteration 5 -- 104: int(%i) 105: 106: -- Iteration 6 -- 107: int(%i) 108: 109: -- Iteration 7 -- 110: int(%i) 111: 112: -- Iteration 8 -- 113: int(%i) 114: 115: -- Iteration 9 -- 116: int(%i) 117: 118: -- Iteration 10 -- 119: int(%i) 120: 121: -- Iteration 11 -- 122: int(%i) 123: 124: -- Iteration 12 -- 125: int(%i) 126: 127: -- Iteration 13 -- 128: int(%i) 129: 130: -- Iteration 14 -- 131: int(%i) 132: 133: -- Iteration 15 -- 134: int(%i) 135: 136: -- Iteration 16 -- 137: int(%i) 138: 139: -- Iteration 17 -- 140: 141: Warning: rand() expects parameter 2 to be long, string given in %s on line %d 142: NULL 143: 144: -- Iteration 18 -- 145: 146: Warning: rand() expects parameter 2 to be long, string given in %s on line %d 147: NULL 148: 149: -- Iteration 19 -- 150: 151: Warning: rand() expects parameter 2 to be long, array given in %s on line %d 152: NULL 153: 154: -- Iteration 20 -- 155: 156: Warning: rand() expects parameter 2 to be long, string given in %s on line %d 157: NULL 158: 159: -- Iteration 21 -- 160: 161: Warning: rand() expects parameter 2 to be long, string given in %s on line %d 162: NULL 163: 164: -- Iteration 22 -- 165: 166: Warning: rand() expects parameter 2 to be long, string given in %s on line %d 167: NULL 168: 169: -- Iteration 23 -- 170: 171: Warning: rand() expects parameter 2 to be long, object given in %s on line %d 172: NULL 173: 174: -- Iteration 24 -- 175: int(%i) 176: 177: -- Iteration 25 -- 178: int(%i) 179: 180: -- Iteration 26 -- 181: 182: Warning: rand() expects parameter 2 to be long, resource given in %s on line %d 183: NULL 184: ===Done===