3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php function camelize($id) { return preg_replace(array('/(^|_|-)+(.)/e', '/\.(.)/e'), array("strtoupper('\\2')", "'_'.strtoupper('\\1')"), $id); } function camelize2($id) { return preg_replace_callback_array([ '/(^|_|-)+(.)/e' => function ($match) { return strtoupper($match[2]); }, '/\.(.)/e' => function ($match) { return '_' . strtoupper($match[1]); } ], $id); } $text = "_salut_les-amis!!"; var_dump(camelize($text), camelize2($text));
based on toNh0
Output for 7.0.19 - 7.0.26, 7.1.5 - 7.3.0beta1
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /in/PRXoE on line 5 Warning: preg_replace_callback_array(): The /e modifier is no longer supported, use preg_replace_callback instead in /in/PRXoE on line 17 Warning: preg_replace_callback_array(): The /e modifier is no longer supported, use preg_replace_callback instead in /in/PRXoE on line 17 NULL NULL
Output for 7.0.14 - 7.0.18, 7.1.0 - 7.1.4
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /in/PRXoE on line 5 Warning: preg_replace_callback_array(): The /e modifier is no longer supported, use preg_replace_callback instead in /in/PRXoE on line 16 Warning: preg_replace_callback_array(): The /e modifier is no longer supported, use preg_replace_callback instead in /in/PRXoE on line 16 NULL NULL
Output for 7.0.0 - 7.0.13
Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /in/PRXoE on line 5 Warning: preg_replace_callback_array(): The /e modifier is no longer supported, use preg_replace_callback instead in /in/PRXoE on line 16 NULL NULL
Output for hhvm-3.22.0
Warning: Modifier /e cannot be used with replacement callback. in /in/PRXoE on line -1 string(15) "_salutLesAmis!!" NULL
Output for hhvm-3.11.1 - 3.21.3
Warning: Modifier /e cannot be used with replacement callback. in /in/PRXoE on line 17 string(15) "_salutLesAmis!!" NULL
Output for 5.5.0 - 5.6.30
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /in/PRXoE on line 5 Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /in/PRXoE on line 5 Fatal error: Call to undefined function preg_replace_callback_array() in /in/PRXoE on line 10
Process exited with code 255.