~ubuntu-branches/ubuntu/quantal/php5/quantal

« back to all changes in this revision

Viewing changes to ext/mbstring/tests/mb_ereg_replace_variation2.phpt

  • Committer: Bazaar Package Importer
  • Author(s): Sean Finney
  • Date: 2009-07-01 09:12:10 UTC
  • mto: (0.9.1) (1.1.17 upstream)
  • mto: This revision was merged to the branch mainline in revision 58.
  • Revision ID: james.westby@ubuntu.com-20090701091210-go0h6506p62on17r
Tags: upstream-5.3.0
ImportĀ upstreamĀ versionĀ 5.3.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
--TEST--
 
2
Test mb_ereg_replace() function : usage variations
 
3
--SKIPIF--
 
4
<?php
 
5
extension_loaded('mbstring') or die('skip');
 
6
function_exists('mb_ereg_replace') or die("skip mb_ereg_replace() is not available in this build");
 
7
?>
 
8
--FILE--
 
9
<?php
 
10
/* Prototype  : proto string mb_ereg_replace(string pattern, string replacement, string string [, string option])
 
11
 * Description: Replace regular expression for multibyte string 
 
12
 * Source code: ext/mbstring/php_mbregex.c
 
13
 * Alias to functions: 
 
14
 */
 
15
 
 
16
echo "*** Testing mb_ereg_replace() : usage variations ***\n";
 
17
 
 
18
// Initialise function arguments not being substituted (if any)
 
19
$pattern = '[a-z]';
 
20
$string = 'string_val';
 
21
$option = '';
 
22
 
 
23
//get an unset variable
 
24
$unset_var = 10;
 
25
unset ($unset_var);
 
26
 
 
27
// get a class
 
28
class classA
 
29
{
 
30
  public function __toString() {
 
31
    return "UTF-8";
 
32
  }
 
33
}
 
34
 
 
35
// heredoc string
 
36
$heredoc = <<<EOT
 
37
UTF-8
 
38
EOT;
 
39
 
 
40
// get a resource variable
 
41
$fp = fopen(__FILE__, "r");
 
42
 
 
43
// unexpected values to be passed to $encoding argument
 
44
$inputs = array(
 
45
 
 
46
       // int data
 
47
/*1*/  0,
 
48
       1,
 
49
       12345,
 
50
       -2345,
 
51
 
 
52
       // float data
 
53
/*5*/  10.5,
 
54
       -10.5,
 
55
       12.3456789000e10,
 
56
       12.3456789000E-10,
 
57
       .5,
 
58
 
 
59
       // null data
 
60
/*10*/ NULL,
 
61
       null,
 
62
 
 
63
       // boolean data
 
64
/*12*/ true,
 
65
       false,
 
66
       TRUE,
 
67
       FALSE,
 
68
       
 
69
       // empty data
 
70
/*16*/ "",
 
71
       '',
 
72
 
 
73
       // string data
 
74
/*18*/ "UTF-8",
 
75
       'UTF-8',
 
76
       $heredoc,
 
77
       
 
78
       // object data
 
79
/*21*/ new classA(),
 
80
 
 
81
       // undefined data
 
82
/*22*/ @$undefined_var,
 
83
 
 
84
       // unset data
 
85
/*23*/ @$unset_var,
 
86
 
 
87
       // resource variable
 
88
/*24*/ $fp
 
89
);
 
90
 
 
91
// loop through each element of the array for pattern
 
92
 
 
93
$iterator = 1;
 
94
foreach($inputs as $input) {
 
95
      echo "\n-- Iteration $iterator --\n";
 
96
      var_dump( mb_ereg_replace($pattern, $input, $string, $option) );
 
97
      $iterator++;
 
98
};
 
99
fclose($fp);
 
100
echo "Done";
 
101
?>
 
102
--EXPECTF--
 
103
*** Testing mb_ereg_replace() : usage variations ***
 
104
 
 
105
-- Iteration 1 --
 
106
string(10) "000000_000"
 
107
 
 
108
-- Iteration 2 --
 
109
string(10) "111111_111"
 
110
 
 
111
-- Iteration 3 --
 
112
string(46) "123451234512345123451234512345_123451234512345"
 
113
 
 
114
-- Iteration 4 --
 
115
string(46) "-2345-2345-2345-2345-2345-2345_-2345-2345-2345"
 
116
 
 
117
-- Iteration 5 --
 
118
string(37) "10.510.510.510.510.510.5_10.510.510.5"
 
119
 
 
120
-- Iteration 6 --
 
121
string(46) "-10.5-10.5-10.5-10.5-10.5-10.5_-10.5-10.5-10.5"
 
122
 
 
123
-- Iteration 7 --
 
124
string(109) "123456789000123456789000123456789000123456789000123456789000123456789000_123456789000123456789000123456789000"
 
125
 
 
126
-- Iteration 8 --
 
127
string(118) "1.23456789E-91.23456789E-91.23456789E-91.23456789E-91.23456789E-91.23456789E-9_1.23456789E-91.23456789E-91.23456789E-9"
 
128
 
 
129
-- Iteration 9 --
 
130
string(28) "0.50.50.50.50.50.5_0.50.50.5"
 
131
 
 
132
-- Iteration 10 --
 
133
string(1) "_"
 
134
 
 
135
-- Iteration 11 --
 
136
string(1) "_"
 
137
 
 
138
-- Iteration 12 --
 
139
string(10) "111111_111"
 
140
 
 
141
-- Iteration 13 --
 
142
string(1) "_"
 
143
 
 
144
-- Iteration 14 --
 
145
string(10) "111111_111"
 
146
 
 
147
-- Iteration 15 --
 
148
string(1) "_"
 
149
 
 
150
-- Iteration 16 --
 
151
string(1) "_"
 
152
 
 
153
-- Iteration 17 --
 
154
string(1) "_"
 
155
 
 
156
-- Iteration 18 --
 
157
string(46) "UTF-8UTF-8UTF-8UTF-8UTF-8UTF-8_UTF-8UTF-8UTF-8"
 
158
 
 
159
-- Iteration 19 --
 
160
string(46) "UTF-8UTF-8UTF-8UTF-8UTF-8UTF-8_UTF-8UTF-8UTF-8"
 
161
 
 
162
-- Iteration 20 --
 
163
string(46) "UTF-8UTF-8UTF-8UTF-8UTF-8UTF-8_UTF-8UTF-8UTF-8"
 
164
 
 
165
-- Iteration 21 --
 
166
string(46) "UTF-8UTF-8UTF-8UTF-8UTF-8UTF-8_UTF-8UTF-8UTF-8"
 
167
 
 
168
-- Iteration 22 --
 
169
string(1) "_"
 
170
 
 
171
-- Iteration 23 --
 
172
string(1) "_"
 
173
 
 
174
-- Iteration 24 --
 
175
 
 
176
Warning: mb_ereg_replace() expects parameter 2 to be string, resource given in %s on line %d
 
177
bool(false)
 
178
Done
 
 
b'\\ No newline at end of file'