下划线与驼峰形式的转换
在与js交互的时候,由于js的代码规范是变量需为驼峰形式,而从数据库里面取出来的列名是下划线形式,就需要进行一次转换。
下划线转换成驼峰形式
思路:
- 找出所有下划线,用空格替换
- 在字符串前面加上某个特殊字符
- 把所有单词的首字母大写
- 去除空格
- 去除字符串最前面的特殊字符
private function camelize($uncamelized_words,$separator='_') {
$uncamelized_words = $separator. str_replace($separator, " ", strtolower($uncamelized_words));
return ltrim(str_replace(" ", "", ucwords($uncamelized_words)), $separator);
}
驼峰形式转换成下划线
思路:
- 正则匹配所有的大写字母
- 把大写字母变成下划线加字母
- 把所有字母变成小写
private function uncamelize($camelCaps,$separator='_') {
return strtolower(preg_replace('/([A-Z])/', $separator . "$1", $camelCaps));
}