Return to sprintf_variation40.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / strings |
1.1 misho 1: --TEST-- 2: Test sprintf() function : usage variations - unsigned formats with integer values 3: --SKIPIF-- 4: <?php 5: if (PHP_INT_SIZE != 4) { 6: die("skip this test is for 32bit platform only"); 7: } 8: ?> 9: --FILE-- 10: <?php 11: /* Prototype : string sprintf(string $format [, mixed $arg1 [, mixed ...]]) 12: * Description: Return a formatted string 13: * Source code: ext/standard/formatted_print.c 14: */ 15: 16: echo "*** Testing sprintf() : unsigned formats with integer values ***\n"; 17: 18: // array of integer values 19: $integer_values = array( 20: 0, 21: 1, 22: -1, 23: -2147483648, // max negative integer value 24: -2147483647, 25: 2147483647, // max positive integer value 26: +2147483640, 27: 0x123B, // integer as hexadecimal 28: 0x12ab, 29: 0Xfff, 30: 0XFA, 31: -0x80000000, // max negative integer as hexadecimal 32: 0x7fffffff, // max postive integer as hexadecimal 33: 0x7FFFFFFF, // max postive integer as hexadecimal 34: 0123, // integer as octal 35: 01912, // should be quivalent to octal 1 36: -020000000000, // max negative integer as octal 37: 017777777777 // max positive integer as octal 38: ); 39: 40: // array of unsigned formats 41: $unsigned_formats = array( 42: "%u", "%hu", "%lu", 43: "%Lu", " %u", "%u ", 44: "\t%u", "\n%u", "%4u", 45: "%30u", "%[0-9]", "%*u" 46: ); 47: 48: 49: $count = 1; 50: foreach($integer_values as $integer_value) { 51: echo "\n-- Iteration $count --\n"; 52: 53: foreach($unsigned_formats as $format) { 54: var_dump( sprintf($format, $integer_value) ); 55: } 56: $count++; 57: }; 58: 59: echo "Done"; 60: ?> 61: --EXPECTF-- 62: *** Testing sprintf() : unsigned formats with integer values *** 63: 64: -- Iteration 1 -- 65: string(1) "0" 66: string(1) "u" 67: string(1) "0" 68: string(1) "u" 69: string(2) " 0" 70: string(2) "0 " 71: string(2) " 0" 72: string(2) " 73: 0" 74: string(4) " 0" 75: string(30) " 0" 76: string(4) "0-9]" 77: string(1) "u" 78: 79: -- Iteration 2 -- 80: string(1) "1" 81: string(1) "u" 82: string(1) "1" 83: string(1) "u" 84: string(2) " 1" 85: string(2) "1 " 86: string(2) " 1" 87: string(2) " 88: 1" 89: string(4) " 1" 90: string(30) " 1" 91: string(4) "0-9]" 92: string(1) "u" 93: 94: -- Iteration 3 -- 95: string(10) "4294967295" 96: string(1) "u" 97: string(10) "4294967295" 98: string(1) "u" 99: string(11) " 4294967295" 100: string(11) "4294967295 " 101: string(11) " 4294967295" 102: string(11) " 103: 4294967295" 104: string(10) "4294967295" 105: string(30) " 4294967295" 106: string(4) "0-9]" 107: string(1) "u" 108: 109: -- Iteration 4 -- 110: string(10) "2147483648" 111: string(1) "u" 112: string(10) "2147483648" 113: string(1) "u" 114: string(11) " 2147483648" 115: string(11) "2147483648 " 116: string(11) " 2147483648" 117: string(11) " 118: 2147483648" 119: string(10) "2147483648" 120: string(30) " 2147483648" 121: string(4) "0-9]" 122: string(1) "u" 123: 124: -- Iteration 5 -- 125: string(10) "2147483649" 126: string(1) "u" 127: string(10) "2147483649" 128: string(1) "u" 129: string(11) " 2147483649" 130: string(11) "2147483649 " 131: string(11) " 2147483649" 132: string(11) " 133: 2147483649" 134: string(10) "2147483649" 135: string(30) " 2147483649" 136: string(4) "0-9]" 137: string(1) "u" 138: 139: -- Iteration 6 -- 140: string(10) "2147483647" 141: string(1) "u" 142: string(10) "2147483647" 143: string(1) "u" 144: string(11) " 2147483647" 145: string(11) "2147483647 " 146: string(11) " 2147483647" 147: string(11) " 148: 2147483647" 149: string(10) "2147483647" 150: string(30) " 2147483647" 151: string(4) "0-9]" 152: string(1) "u" 153: 154: -- Iteration 7 -- 155: string(10) "2147483640" 156: string(1) "u" 157: string(10) "2147483640" 158: string(1) "u" 159: string(11) " 2147483640" 160: string(11) "2147483640 " 161: string(11) " 2147483640" 162: string(11) " 163: 2147483640" 164: string(10) "2147483640" 165: string(30) " 2147483640" 166: string(4) "0-9]" 167: string(1) "u" 168: 169: -- Iteration 8 -- 170: string(4) "4667" 171: string(1) "u" 172: string(4) "4667" 173: string(1) "u" 174: string(5) " 4667" 175: string(5) "4667 " 176: string(5) " 4667" 177: string(5) " 178: 4667" 179: string(4) "4667" 180: string(30) " 4667" 181: string(4) "0-9]" 182: string(1) "u" 183: 184: -- Iteration 9 -- 185: string(4) "4779" 186: string(1) "u" 187: string(4) "4779" 188: string(1) "u" 189: string(5) " 4779" 190: string(5) "4779 " 191: string(5) " 4779" 192: string(5) " 193: 4779" 194: string(4) "4779" 195: string(30) " 4779" 196: string(4) "0-9]" 197: string(1) "u" 198: 199: -- Iteration 10 -- 200: string(4) "4095" 201: string(1) "u" 202: string(4) "4095" 203: string(1) "u" 204: string(5) " 4095" 205: string(5) "4095 " 206: string(5) " 4095" 207: string(5) " 208: 4095" 209: string(4) "4095" 210: string(30) " 4095" 211: string(4) "0-9]" 212: string(1) "u" 213: 214: -- Iteration 11 -- 215: string(3) "250" 216: string(1) "u" 217: string(3) "250" 218: string(1) "u" 219: string(4) " 250" 220: string(4) "250 " 221: string(4) " 250" 222: string(4) " 223: 250" 224: string(4) " 250" 225: string(30) " 250" 226: string(4) "0-9]" 227: string(1) "u" 228: 229: -- Iteration 12 -- 230: string(10) "2147483648" 231: string(1) "u" 232: string(10) "2147483648" 233: string(1) "u" 234: string(11) " 2147483648" 235: string(11) "2147483648 " 236: string(11) " 2147483648" 237: string(11) " 238: 2147483648" 239: string(10) "2147483648" 240: string(30) " 2147483648" 241: string(4) "0-9]" 242: string(1) "u" 243: 244: -- Iteration 13 -- 245: string(10) "2147483647" 246: string(1) "u" 247: string(10) "2147483647" 248: string(1) "u" 249: string(11) " 2147483647" 250: string(11) "2147483647 " 251: string(11) " 2147483647" 252: string(11) " 253: 2147483647" 254: string(10) "2147483647" 255: string(30) " 2147483647" 256: string(4) "0-9]" 257: string(1) "u" 258: 259: -- Iteration 14 -- 260: string(10) "2147483647" 261: string(1) "u" 262: string(10) "2147483647" 263: string(1) "u" 264: string(11) " 2147483647" 265: string(11) "2147483647 " 266: string(11) " 2147483647" 267: string(11) " 268: 2147483647" 269: string(10) "2147483647" 270: string(30) " 2147483647" 271: string(4) "0-9]" 272: string(1) "u" 273: 274: -- Iteration 15 -- 275: string(2) "83" 276: string(1) "u" 277: string(2) "83" 278: string(1) "u" 279: string(3) " 83" 280: string(3) "83 " 281: string(3) " 83" 282: string(3) " 283: 83" 284: string(4) " 83" 285: string(30) " 83" 286: string(4) "0-9]" 287: string(1) "u" 288: 289: -- Iteration 16 -- 290: string(1) "1" 291: string(1) "u" 292: string(1) "1" 293: string(1) "u" 294: string(2) " 1" 295: string(2) "1 " 296: string(2) " 1" 297: string(2) " 298: 1" 299: string(4) " 1" 300: string(30) " 1" 301: string(4) "0-9]" 302: string(1) "u" 303: 304: -- Iteration 17 -- 305: string(10) "2147483648" 306: string(1) "u" 307: string(10) "2147483648" 308: string(1) "u" 309: string(11) " 2147483648" 310: string(11) "2147483648 " 311: string(11) " 2147483648" 312: string(11) " 313: 2147483648" 314: string(10) "2147483648" 315: string(30) " 2147483648" 316: string(4) "0-9]" 317: string(1) "u" 318: 319: -- Iteration 18 -- 320: string(10) "2147483647" 321: string(1) "u" 322: string(10) "2147483647" 323: string(1) "u" 324: string(11) " 2147483647" 325: string(11) "2147483647 " 326: string(11) " 2147483647" 327: string(11) " 328: 2147483647" 329: string(10) "2147483647" 330: string(30) " 2147483647" 331: string(4) "0-9]" 332: string(1) "u" 333: Done