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
|
--TEST--
preg_replace_callback_array() basic functions
--FILE--
<?php
class Rep {
public function __invoke() {
return "d";
}
}
class Foo {
public static function rep($rep) {
return "ok";
}
}
function b() {
return "b";
}
var_dump(preg_replace_callback_array(
array(
"/a/" => 'b',
"/b/" => function () { return "c"; },
"/c/" => new Rep,
'/d/' => array("Foo", "rep")), 'a'));
var_dump(preg_replace_callback_array(
array(
"/a/" => 'b',
"/c/" => new Rep,
"/b/" => function () { return "ok"; },
'/d/' => array("Foo", "rep")), 'a'));
var_dump(preg_replace_callback_array(
array(
'/d/' => array("Foo", "rep"),
"/c/" => new Rep,
"/a/" => 'b',
"/b/" => create_function('$a', 'return "ok";')), 'a', -1, $count));
var_dump($count);
?>
--EXPECTF--
string(2) "ok"
string(2) "ok"
string(2) "ok"
int(2)
|