blob: 6b7b75ecd90980151b50fbfc91937bced21fe152 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
--TEST--
Test mb_strrpos() function : usage variations - pass encoding as third argument (deprecated behaviour)
--SKIPIF--
<?php
extension_loaded('mbstring') or die('skip');
function_exists('mb_strrpos') or die("skip mb_strrpos() is not available in this build");
?>
--FILE--
<?php
/* Prototype : int mb_strrpos(string $haystack, string $needle [, int $offset [, string $encoding]])
* Description: Find position of last occurrence of a string within another
* Source code: ext/mbstring/mbstring.c
*/
/*
* Testing deprecated behaviour where third argument can be $encoding
*/
echo "*** Testing mb_strrpos() : usage variations ***\n";
$string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=');
$needle_mb = base64_decode('44CC');
$stringh = <<<END
utf-8
END;
$inputs = array('Double Quoted String' => "utf-8",
'Single Quoted String' => 'utf-8',
'Heredoc' => $stringh);
foreach ($inputs as $type => $input) {
echo "\n-- $type --\n";
echo "-- With fourth encoding argument --\n";
var_dump(mb_strrpos($string_mb, $needle_mb, $input, 'utf-8'));
echo "-- Without fourth encoding argument --\n";
var_dump(mb_strrpos($string_mb, $needle_mb, $input));
}
echo "Done";
?>
--EXPECTF--
*** Testing mb_strrpos() : usage variations ***
-- Double Quoted String --
-- With fourth encoding argument --
Deprecated: mb_strrpos(): Passing the encoding as third parameter is deprecated. Use an explicit zero offset in %s on line %d
int(20)
-- Without fourth encoding argument --
Deprecated: mb_strrpos(): Passing the encoding as third parameter is deprecated. Use an explicit zero offset in %s on line %d
int(20)
-- Single Quoted String --
-- With fourth encoding argument --
Deprecated: mb_strrpos(): Passing the encoding as third parameter is deprecated. Use an explicit zero offset in %s on line %d
int(20)
-- Without fourth encoding argument --
Deprecated: mb_strrpos(): Passing the encoding as third parameter is deprecated. Use an explicit zero offset in %s on line %d
int(20)
-- Heredoc --
-- With fourth encoding argument --
Deprecated: mb_strrpos(): Passing the encoding as third parameter is deprecated. Use an explicit zero offset in %s on line %d
int(20)
-- Without fourth encoding argument --
Deprecated: mb_strrpos(): Passing the encoding as third parameter is deprecated. Use an explicit zero offset in %s on line %d
int(20)
Done
|