PHP ! preg_replace改为preg_replace_callback

PHP 求助!!!! preg_replace改为preg_replace_callback


return preg_replace(array( '/(^|_|-)+(.)/e', '/\.(.)/e'), array( "strtoupper('\\2')", "'_'.strtoupper('\\1')"), $id);

 
上面这个 语句 这么换为 preg_replace_callback 对应的语句啊!!!
------解决思路----------------------
return preg_replace_callback('/\.(.)/',
         function($r) { return '_' . strtoupper($r[1]); },
         preg_replace_callback('/(^
------解决思路----------------------
_
------解决思路----------------------
-)+(.)/',
           function($r) { return strtoupper($r[2]); },
           $id
         )
       );