mirror of
https://github.com/php/php-src.git
synced 2026-03-29 03:32:20 +02:00
PHP requires integer typehints to be written "int" and does not allow "integer" as an alias. This changes type error messages to match the actual type name and avoids confusing messages like "must be of the type integer, integer given".
58 lines
1.4 KiB
PHP
58 lines
1.4 KiB
PHP
--TEST--
|
|
Test substr_count() function (error conditions)
|
|
--FILE--
|
|
<?php
|
|
|
|
echo "\n*** Testing error conditions ***\n";
|
|
$str = 'abcdefghik';
|
|
|
|
/* Zero argument */
|
|
var_dump( substr_count() );
|
|
|
|
/* more than expected no. of args */
|
|
var_dump( substr_count($str, "t", 0, 15, 30) );
|
|
|
|
/* offset before start */
|
|
var_dump(substr_count($str, "t", -20));
|
|
|
|
/* offset > size of the string */
|
|
var_dump(substr_count($str, "t", 25));
|
|
|
|
/* Using offset and length to go beyond the size of the string:
|
|
Warning message expected, as length+offset > length of string */
|
|
var_dump( substr_count($str, "i", 5, 7) );
|
|
|
|
/* Invalid offset argument */
|
|
var_dump( substr_count($str, "t", "") );
|
|
|
|
/* length too small */
|
|
var_dump( substr_count($str, "t", 2, -20) );
|
|
|
|
echo "Done\n";
|
|
|
|
?>
|
|
--EXPECTF--
|
|
*** Testing error conditions ***
|
|
|
|
Warning: substr_count() expects at least 2 parameters, 0 given in %s on line %d
|
|
NULL
|
|
|
|
Warning: substr_count() expects at most 4 parameters, 5 given in %s on line %d
|
|
NULL
|
|
|
|
Warning: substr_count(): Offset not contained in string in %s on line %d
|
|
bool(false)
|
|
|
|
Warning: substr_count(): Offset not contained in string in %s on line %d
|
|
bool(false)
|
|
|
|
Warning: substr_count(): Invalid length value in %s on line %d
|
|
bool(false)
|
|
|
|
Warning: substr_count() expects parameter 3 to be int, string given in %s on line %d
|
|
NULL
|
|
|
|
Warning: substr_count(): Invalid length value in %s on line %d
|
|
bool(false)
|
|
Done
|