Part of https://wiki.php.net/rfc/deprecations_php_7_3.
}
needle_char[1] = 0;
+ php_error_docref(NULL, E_DEPRECATED,
+ "Non-string needles will be interpreted as strings in the future. " \
+ "Use an explicit chr() call to preserve the current behavior");
+
found = php_stristr(haystack_dup, needle_char, ZSTR_LEN(haystack), 1);
}
}
needle_char[1] = 0;
+ php_error_docref(NULL, E_DEPRECATED,
+ "Non-string needles will be interpreted as strings in the future. " \
+ "Use an explicit chr() call to preserve the current behavior");
+
found = php_memnstr(ZSTR_VAL(haystack), needle_char, 1, ZSTR_VAL(haystack) + ZSTR_LEN(haystack));
}
}
needle_char[1] = 0;
+ php_error_docref(NULL, E_DEPRECATED,
+ "Non-string needles will be interpreted as strings in the future. " \
+ "Use an explicit chr() call to preserve the current behavior");
+
found = (char*)php_memnstr(ZSTR_VAL(haystack) + offset,
needle_char,
1,
if (php_needle_char(needle, needle_char) != SUCCESS) {
RETURN_FALSE;
}
+
+ php_error_docref(NULL, E_DEPRECATED,
+ "Non-string needles will be interpreted as strings in the future. " \
+ "Use an explicit chr() call to preserve the current behavior");
+
haystack_dup = php_string_tolower(haystack);
needle_char[0] = tolower(needle_char[0]);
needle_char[1] = '\0';
if (php_needle_char(zneedle, ord_needle) != SUCCESS) {
RETURN_FALSE;
}
+
+ php_error_docref(NULL, E_DEPRECATED,
+ "Non-string needles will be interpreted as strings in the future. " \
+ "Use an explicit chr() call to preserve the current behavior");
+
ord_needle[1] = '\0';
needle = ord_needle;
needle_len = 1;
ZSTR_ALLOCA_FREE(ord_needle, use_heap);
RETURN_FALSE;
}
+
+ php_error_docref(NULL, E_DEPRECATED,
+ "Non-string needles will be interpreted as strings in the future. " \
+ "Use an explicit chr() call to preserve the current behavior");
+
ZSTR_VAL(ord_needle)[1] = '\0';
needle = ord_needle;
}
RETURN_FALSE;
}
+ php_error_docref(NULL, E_DEPRECATED,
+ "Non-string needles will be interpreted as strings in the future. " \
+ "Use an explicit chr() call to preserve the current behavior");
+
found = zend_memrchr(ZSTR_VAL(haystack), needle_chr, ZSTR_LEN(haystack));
}
echo "Done\n";
?>
---EXPECT--
+--EXPECTF--
int(0)
int(5)
int(5)
bool(false)
bool(false)
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
int(1)
Done
}
echo "*** Done ***";
?>
---EXPECT--
+--EXPECTF--
*** Testing stripos() function: with double quoted strings ***
-- Iteration 1 --
int(2)
int(8)
bool(false)
-- Iteration 12 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
int(8)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 13 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
int(8)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 14 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
int(8)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 15 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
int(8)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 16 --
bool(false)
*** Testing stripos() function with unexpected values for needle ***
-- Iteration 1 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 2 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 3 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 4 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 5 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 6 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 7 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 8 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 9 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 10 --
bool(false)
-- Iteration 15 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 16 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 17 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 18 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 19 --
Notice: Object of class sample could not be converted to int in %s on line %d
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 20 --
bool(false)
-- Iteration 22 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 23 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 24 --
%s
-- Iteration 25 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 26 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
*** Done ***
--EXPECTF--
*** Testing stripos() function with unexpected values for haystack and needle ***
-- Iteration 1 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 2 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 3 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 4 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 5 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 6 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 7 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 8 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 9 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 10 --
Warning: stripos() expects parameter 1 to be string, array given in %s on line %d
NULL
-- Iteration 15 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 16 --
bool(false)
Warning: stripos(): Offset not contained in string in %s on line %d
bool(false)
-- Iteration 17 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 18 --
bool(false)
-- Iteration 19 --
Notice: Object of class sample could not be converted to int in %s on line %d
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
Notice: Object of class sample could not be converted to int in %s on line %d
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 20 --
bool(false)
--EXPECTF--
*** Testing stripos() function with unexpected values for haystack, needle & offset ***
-- Iteration 1 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 2 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 3 --
Warning: stripos(): Offset not contained in string in %s on line %d
bool(false)
-- Iteration 8 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 9 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 10 --
Warning: stripos() expects parameter 1 to be string, array given in %s on line %d
NULL
-- Iteration 15 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 16 --
bool(false)
-- Iteration 17 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 18 --
bool(false)
}
echo "*** Done ***";
?>
---EXPECT--
+--EXPECTF--
*** Testing stripos() function: with single quoted strings ***
-- Iteration 1 --
int(2)
int(10)
int(10)
-- Iteration 12 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 13 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 14 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 15 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 16 --
bool(false)
bool(false)
bool(false)
-- Iteration 45 --
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
int(26)
+
+Deprecated: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 46 --
int(0)
var_dump(stristr($email, 97, 1));
?>
---EXPECT--
+--EXPECTF--
string(7) "cCdEfGh"
string(2) "Ab"
string(5) "eEfGh"
string(4) "AbCd"
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
string(11) "azAbCdeEfGh"
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
string(1) "w"
--EXPECTF--
*** Testing stristr() function: with unexpected inputs for 'needle' argument ***
-- Iteration 1 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 2 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 3 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 4 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 5 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 6 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 7 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 8 --
Warning: stristr(): needle is not a string or an integer in %s on line %d
bool(false)
-- Iteration 11 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 12 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 13 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 14 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 15 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 16 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 17 --
Notice: Object of class sample could not be converted to int in %s on line %d
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 18 --
Warning: stristr(): needle is not a string or an integer in %s on line %d
bool(false)
-- Iteration 19 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
-- Iteration 20 --
+
+Deprecated: stristr(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
===DONE===
// string("11") is contained
var_dump(strpos("foo 11", "11"));
?>
---EXPECT--
+--EXPECTF--
+Deprecated: strpos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
bool(false)
+
+Deprecated: strpos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior in %s on line %d
int(1)
int(4)
--EXPECTF--
*** Testing strrchr() function with unexpected inputs for needle ***
-- Iteration 1 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 2 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 3 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 4 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 5 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 6 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 7 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 8 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 9 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 10 --
Warning: strrchr(): needle is not a string or an integer in %s on line %d
bool(false)
-- Iteration 15 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 16 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 17 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 18 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 19 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 20 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 21 --
Notice: Object of class sample could not be converted to int in %s on line %d
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 22 --
bool(false)
Warning: strrchr(): needle is not a string or an integer in %s on line %d
bool(false)
-- Iteration 25 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 26 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-*** Done ***
+*** Done ***
\ No newline at end of file
--EXPECTF--
*** Testing strrchr() function: with unexpected inputs for haystack and needle ***
-- Iteration 1 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 2 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 3 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 4 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 5 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 6 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 7 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 8 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 9 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 10 --
Warning: strrchr() expects parameter 1 to be string, array given in %s on line %d
NULL
-- Iteration 15 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 16 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 17 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 18 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 19 --
Notice: Object of class sample could not be converted to int in %s on line %d
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 20 --
bool(false)
-- Iteration 21 --
bool(false)
-- Iteration 22 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 23 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 24 --
Warning: strrchr() expects parameter 1 to be string, resource given in %s on line %d
NULL
-- Iteration 25 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 26 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-*** Done ***
+*** Done ***
\ No newline at end of file
}
echo "*** Done ***";
?>
---EXPECT--
+--EXPECTF--
*** Testing strrchr() function: with various single quoted strings ***
-- Iteration 1 --
string(22) "lo123456he \x234 \101 "
string(5) "\101 "
-- Iteration 12 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 13 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 14 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 15 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 16 --
string(7) "4 \101 "
-- Iteration 44 --
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
string(37) "*+-./:;<=>?@hello123456he \x234 \101 "
-- Iteration 45 --
string(63) "Hello,\t\n\0\n $&!#%\o,()*+-./:;<=>?@hello123456he \x234 \101 "
-*** Done ***
+*** Done ***
\ No newline at end of file
}
echo "*** Done ***";
?>
---EXPECT--
+--EXPECTF--
*** Testing strrchr() function: with heredoc strings ***
bool(false)
bool(false)
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrchr(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
bool(false)
bool(false)
-*** Done ***
+*** Done ***
\ No newline at end of file
}
?>
===DONE===
---EXPECT--
+--EXPECTF--
*** Testing strripos() function: with double quoted strings ***
-- Iteration 1 --
int(28)
bool(false)
int(8)
-- Iteration 12 --
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
-- Iteration 13 --
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
-- Iteration 14 --
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
-- Iteration 15 --
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
-- Iteration 16 --
bool(false)
bool(false)
bool(false)
int(0)
-===DONE===
+===DONE===
\ No newline at end of file
}
?>
===DONE===
---EXPECT--
+--EXPECTF--
*** Testing strripos() function: with single quoted strings ***
-- Iteration 1 --
int(32)
bool(false)
int(10)
-- Iteration 12 --
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 13 --
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 14 --
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 15 --
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 16 --
bool(false)
bool(false)
bool(false)
-- Iteration 35 --
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(23)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(23)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(23)
+
+Deprecated: strripos(): Non-string needles will be interpreted as strings in %s on line %d
int(23)
-- Iteration 36 --
int(0)
bool(false)
bool(false)
int(0)
-===DONE===
+===DONE===
\ No newline at end of file
}
echo "*** Done ***";
?>
---EXPECT--
+--EXPECTF--
*** Testing strrpos() function: with double quoted strings ***
-- Iteration 1 --
int(28)
int(8)
bool(false)
-- Iteration 12 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 13 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 14 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 15 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
int(8)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 16 --
bool(false)
-- Iteration 35 --
int(0)
bool(false)
-*** Done ***
+*** Done ***
\ No newline at end of file
--EXPECTF--
*** Testing strrpos() function with unexpected values for needle ***
-- Iteration 1 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 2 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 3 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 4 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 5 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 6 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 7 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 8 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 9 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 10 --
Warning: strrpos(): needle is not a string or an integer in %s on line %d
bool(false)
-- Iteration 15 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 16 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 17 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 18 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 19 --
Notice: Object of class sample could not be converted to int in %s on line %d
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 20 --
bool(false)
-- Iteration 21 --
bool(false)
-- Iteration 22 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 23 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 24 --
Warning: strrpos(): needle is not a string or an integer in %s on line %d
bool(false)
-- Iteration 25 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 26 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-*** Done ***
+*** Done ***
\ No newline at end of file
--EXPECTF--
*** Testing strrpos() function with unexpected values for haystack and needle ***
-- Iteration 1 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 2 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 3 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 4 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 5 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 6 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 7 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 8 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 9 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 10 --
Warning: strrpos() expects parameter 1 to be string, array given in %s on line %d
bool(false)
-- Iteration 15 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 16 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 17 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 18 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 19 --
Notice: Object of class sample could not be converted to int in %s on line %d
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
Notice: Object of class sample could not be converted to int in %s on line %d
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 20 --
bool(false)
bool(false)
bool(false)
-- Iteration 22 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 23 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 24 --
Warning: strrpos() expects parameter 1 to be string, resource given in %s on line %d
bool(false)
-- Iteration 25 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 26 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-*** Done ***
+*** Done ***
\ No newline at end of file
}
echo "*** Done ***";
?>
---EXPECT--
+--EXPECTF--
*** Testing strrpos() function: with single quoted strings ***
-- Iteration 1 --
int(32)
int(10)
int(10)
-- Iteration 12 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 13 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 14 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 15 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 16 --
bool(false)
bool(false)
bool(false)
-- Iteration 35 --
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
int(23)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
-- Iteration 36 --
int(0)
bool(false)
-*** Done ***
+*** Done ***
\ No newline at end of file
echo "*** Done ***";
?>
---EXPECT--
+--EXPECTF--
*** Testing strrpos() function: with heredoc strings ***
-- With empty heredoc string --
bool(false)
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
+
+Deprecated: strrpos(): Non-string needles will be interpreted as strings in %s on line %d
bool(false)
*** Done ***
\ No newline at end of file