Return to base64_decode_variation_001.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / url |
1.1 misho 1: --TEST-- 2: Test base64_decode() function : usage variations - unexpected types for arg 1 3: --FILE-- 4: <?php 5: /* Prototype : proto string base64_decode(string str[, bool strict]) 6: * Description: Decodes string using MIME base64 algorithm 7: * Source code: ext/standard/base64.c 8: * Alias to functions: 9: */ 10: 11: function test_error_handler($err_no, $err_msg, $filename, $linenum, $vars) { 12: echo "Error: $err_no - $err_msg, $filename($linenum)\n"; 13: } 14: set_error_handler('test_error_handler'); 15: 16: echo "*** Testing base64_decode() : usage variations ***\n"; 17: 18: // Initialise function arguments not being substituted (if any) 19: $strict = true; 20: 21: //getting the resource 22: $file_handle = fopen(__FILE__, "r"); 23: 24: //get an unset variable 25: $unset_var = 10; 26: unset ($unset_var); 27: 28: //array of values to iterate over 29: $values = array ( 30: // int data 31: "0" => 0, 32: "1" => 1, 33: "12345" => 12345, 34: "-2345" => -2345, 35: 36: // float data 37: "10.5" => 10.5, 38: "-10.5" => -10.5, 39: "10.1234567e10" => 10.1234567e10, 40: "10.7654321E-10" => 10.7654321E-10, 41: ".5" => .5, 42: 43: // array data 44: "array()" => array(), 45: "array(0)" => array(0), 46: "array(1)" => array(1), 47: "array(1, 2)" => array(1, 2), 48: "array('color' => 'red', 'item' => 'pen'" => array('color' => 'red', 'item' => 'pen'), 49: 50: // null data 51: "NULL" => NULL, 52: "null" => null, 53: 54: // boolean data 55: "true" => true, 56: "false" => false, 57: "TRUE" => TRUE, 58: "FALSE" => FALSE, 59: 60: // empty data 61: "\"\"" => "", 62: "''" => '', 63: 64: // object data 65: "stdClass object" => new stdclass(), 66: 67: // undefined data 68: "undefined variable" => $undefined_var, 69: 70: // unset data 71: "unset variable" => $unset_var, 72: 73: // resource data 74: "resource" => $file_handle 75: ); 76: 77: // loop through each element of the array for str argument 78: 79: foreach($values as $key=>$value) { 80: echo "\n-- Arg value $key --\n"; 81: $output = base64_decode($value, $strict); 82: 83: if (is_string($output)) { 84: var_dump(bin2hex($output)); 85: } else { 86: var_dump($output); 87: } 88: }; 89: 90: ?> 91: ===Done=== 92: --EXPECTF-- 93: *** Testing base64_decode() : usage variations *** 94: Error: 8 - Undefined variable: undefined_var, %s(%d) 95: Error: 8 - Undefined variable: unset_var, %s(%d) 96: 97: -- Arg value 0 -- 98: string(0) "" 99: 100: -- Arg value 1 -- 101: string(0) "" 102: 103: -- Arg value 12345 -- 104: string(6) "d76df8" 105: 106: -- Arg value -2345 -- 107: bool(false) 108: 109: -- Arg value 10.5 -- 110: bool(false) 111: 112: -- Arg value -10.5 -- 113: bool(false) 114: 115: -- Arg value 10.1234567e10 -- 116: string(18) "d74d76df8e7aef4d34" 117: 118: -- Arg value 10.7654321E-10 -- 119: bool(false) 120: 121: -- Arg value .5 -- 122: bool(false) 123: 124: -- Arg value array() -- 125: Error: 2 - base64_decode() expects parameter 1 to be string, array given, %s(%d) 126: NULL 127: 128: -- Arg value array(0) -- 129: Error: 2 - base64_decode() expects parameter 1 to be string, array given, %s(%d) 130: NULL 131: 132: -- Arg value array(1) -- 133: Error: 2 - base64_decode() expects parameter 1 to be string, array given, %s(%d) 134: NULL 135: 136: -- Arg value array(1, 2) -- 137: Error: 2 - base64_decode() expects parameter 1 to be string, array given, %s(%d) 138: NULL 139: 140: -- Arg value array('color' => 'red', 'item' => 'pen' -- 141: Error: 2 - base64_decode() expects parameter 1 to be string, array given, %s(%d) 142: NULL 143: 144: -- Arg value NULL -- 145: string(0) "" 146: 147: -- Arg value null -- 148: string(0) "" 149: 150: -- Arg value true -- 151: string(0) "" 152: 153: -- Arg value false -- 154: string(0) "" 155: 156: -- Arg value TRUE -- 157: string(0) "" 158: 159: -- Arg value FALSE -- 160: string(0) "" 161: 162: -- Arg value "" -- 163: string(0) "" 164: 165: -- Arg value '' -- 166: string(0) "" 167: 168: -- Arg value stdClass object -- 169: Error: 2 - base64_decode() expects parameter 1 to be string, object given, %s(%d) 170: NULL 171: 172: -- Arg value undefined variable -- 173: string(0) "" 174: 175: -- Arg value unset variable -- 176: string(0) "" 177: 178: -- Arg value resource -- 179: Error: 2 - base64_decode() expects parameter 1 to be string, resource given, %s(%d) 180: NULL 181: ===Done===