1--TEST-- 2Test preg_match() function : error conditions - wrong arg types 3--FILE-- 4<?php 5/* 6 * proto int preg_match(string pattern, string subject [, array subpatterns [, int flags [, int offset]]]) 7 * Function is implemented in ext/pcre/php_pcre.c 8*/ 9error_reporting(E_ALL&~E_NOTICE); 10/* 11* Testing how preg_match reacts to being passed the wrong type of subject argument 12*/ 13echo "*** Testing preg_match() : error conditions ***\n"; 14$regex = '/[a-zA-Z]/'; 15$input = array('this is a string', array('this is', 'a subarray'),); 16foreach($input as $value) { 17 print "\nArg value is: $value\n"; 18 var_dump(preg_match($regex, $value)); 19} 20$value = new stdclass(); //Object 21var_dump(preg_match($regex, $value)); 22echo "Done"; 23?> 24--EXPECTF-- 25*** Testing preg_match() : error conditions *** 26 27Arg value is: this is a string 28int(1) 29 30Arg value is: Array 31 32Warning: preg_match() expects parameter 2 to be string, array given in %spreg_match_error2.php on line %d 33bool(false) 34 35Warning: preg_match() expects parameter 2 to be string, object given in %spreg_match_error2.php on line %d 36bool(false) 37Done 38