2 Test strftime() function : usage variation - Passing unexpected values to second argument 'timestamp'.
5 /* Prototype : string strftime(string format [, int timestamp])
6 * Description: Format a local time/date according to locale settings
7 * Source code: ext/date/php_date.c
11 echo "*** Testing strftime() : usage variation ***\n";
13 date_default_timezone_set("Asia/Calcutta");
14 // Initialise all required variables
15 $format = '%b %d %Y %H:%M:%S';
17 //get an unset variable
21 // define some classes
22 class classWithToString
24 public function __toString() {
25 return "Class A object";
29 class classWithoutToString
39 $index_array = array (1, 2, 3);
40 $assoc_array = array ('one' => 1, 'two' => 2);
42 //array of values to iterate over
47 'float -10.5' => -10.5,
51 'empty array' => array(),
52 'int indexed array' => $index_array,
53 'associative array' => $assoc_array,
54 'nested arrays' => array('foo', $index_array, $assoc_array),
57 'uppercase NULL' => NULL,
58 'lowercase null' => null,
61 'lowercase true' => true,
62 'lowercase false' =>false,
63 'uppercase TRUE' =>TRUE,
64 'uppercase FALSE' =>FALSE,
67 'empty string DQ' => "",
68 'empty string SQ' => '',
71 'string DQ' => "string",
72 'string SQ' => 'string',
73 'mixed case string' => "sTrInG",
74 'heredoc' => $heredoc,
77 'instance of classWithToString' => new classWithToString(),
78 'instance of classWithoutToString' => new classWithoutToString(),
81 'undefined var' => @$undefined_var,
84 'unset var' => @$unset_var,
87 // loop through each element of the array for timestamp
89 foreach($inputs as $key =>$value) {
91 var_dump( strftime($format, $value) );
97 *** Testing strftime() : usage variation ***
100 string(20) "Jan 01 1970 05:30:10"
103 string(20) "Jan 01 1970 05:29:50"
106 string(20) "Jan 01 1970 05:30:00"
110 Warning: strftime() expects parameter 2 to be long, array given in %s on line %d
113 --int indexed array--
115 Warning: strftime() expects parameter 2 to be long, array given in %s on line %d
118 --associative array--
120 Warning: strftime() expects parameter 2 to be long, array given in %s on line %d
125 Warning: strftime() expects parameter 2 to be long, array given in %s on line %d
129 string(20) "Jan 01 1970 05:30:00"
132 string(20) "Jan 01 1970 05:30:00"
135 string(20) "Jan 01 1970 05:30:01"
138 string(20) "Jan 01 1970 05:30:00"
141 string(20) "Jan 01 1970 05:30:01"
144 string(20) "Jan 01 1970 05:30:00"
148 Warning: strftime() expects parameter 2 to be long, string given in %s on line %d
153 Warning: strftime() expects parameter 2 to be long, string given in %s on line %d
158 Warning: strftime() expects parameter 2 to be long, string given in %s on line %d
163 Warning: strftime() expects parameter 2 to be long, string given in %s on line %d
166 --mixed case string--
168 Warning: strftime() expects parameter 2 to be long, string given in %s on line %d
173 Warning: strftime() expects parameter 2 to be long, string given in %s on line %d
176 --instance of classWithToString--
178 Warning: strftime() expects parameter 2 to be long, object given in %s on line %d
181 --instance of classWithoutToString--
183 Warning: strftime() expects parameter 2 to be long, object given in %s on line %d
187 string(20) "Jan 01 1970 05:30:00"
190 string(20) "Jan 01 1970 05:30:00"