下划线转驼峰比较简单,直接根据下划线打散成数组,每个子项首字符转大写,再做字符串拼接即可。
驼峰转下划线风格,稍微复杂一些。刚开始我没有思路,后来想到,可以遍历字符串,遇到大写字母将其转换成小写,并在前面加一个下划线。
class CamelTool{
//驼峰命名法转下划线风格
public static function toUnderScore($str){
$array = array();
for($i=0;$i<strlen($str);$i++){
if($str[$i] == strtolower($str[$i])){
$array[] = $str[$i];
}else{
if($i>0){
$array[] = '_';
}
$array[] = strtolower($str[$i]);
}
}
$result = implode('',$array);
return $result;
}
//下划线风格转驼峰命名法
public static function toCamelCase($str){
$array = explode('_', $str);
$result = '';
foreach($array as $value){
$result.= ucfirst($value);
}
return $result;
}
}