--TEST-- Test strtok() function : usage variations - first argument as non-string --FILE-- 'red-color', 'item' => 'pen-color'), // boolean values true, false, TRUE, FALSE, // objects new sample(), // empty string "", '', // null vlaues NULL, null, // undefined variable $undefined_var, // unset variable $unset_var, // resource $file_handle ); // loop through each element of the array and check the working of strtok() // when $str arugment is supplied with different values echo "\n--- Testing strtok() by supplying different values for 'str' argument ---\n"; $counter = 1; for($index = 0; $index < count($values); $index ++) { echo "-- Iteration $counter --\n"; $str = $values [$index]; var_dump( strtok($str, $token) ); $counter ++; } //closing the resource fclose($file_handle); echo "Done\n"; ?> --EXPECTF-- *** Testing strtok() : with first argument as non-string *** Notice: Undefined variable: undefined_var in %s on line %d Notice: Undefined variable: unset_var in %s on line %d --- Testing strtok() by supplying different values for 'str' argument --- -- Iteration 1 -- string(1) "0" -- Iteration 2 -- string(1) "1" -- Iteration 3 -- string(5) "12345" -- Iteration 4 -- string(4) "2345" -- Iteration 5 -- string(4) "10.5" -- Iteration 6 -- string(4) "10.5" -- Iteration 7 -- string(12) "101234567000" -- Iteration 8 -- string(11) "1.07654321E" -- Iteration 9 -- string(3) "0.5" -- Iteration 10 -- Warning: strtok() expects parameter 1 to be string, array given in %s on line %d NULL -- Iteration 11 -- Warning: strtok() expects parameter 1 to be string, array given in %s on line %d NULL -- Iteration 12 -- Warning: strtok() expects parameter 1 to be string, array given in %s on line %d NULL -- Iteration 13 -- Warning: strtok() expects parameter 1 to be string, array given in %s on line %d NULL -- Iteration 14 -- Warning: strtok() expects parameter 1 to be string, array given in %s on line %d NULL -- Iteration 15 -- string(1) "1" -- Iteration 16 -- bool(false) -- Iteration 17 -- string(1) "1" -- Iteration 18 -- bool(false) -- Iteration 19 -- string(3) "obj" -- Iteration 20 -- bool(false) -- Iteration 21 -- bool(false) -- Iteration 22 -- bool(false) -- Iteration 23 -- bool(false) -- Iteration 24 -- bool(false) -- Iteration 25 -- bool(false) -- Iteration 26 -- Warning: strtok() expects parameter 1 to be string, resource given in %s on line %d NULL Done