知道什么是蛇形命名法(snake case)和驼峰命名法(camel case)吗?

snake case类似于这样: file_name、 line_number、 my_first_program

camel case类似于这样: fileName、 lineNumber、 myFirstProgram

使用PHP内置函数实现// 蛇形命名转换为驼峰命名

function SnakeToLowerCamel($value){

$value = ucwords(str_replace(['_', '-'], ' ', $value));

$value = str_replace(' ', '', $value);

return lcfirst($value);

}

// 驼峰命名转换为蛇形命名

function CamelToSnake($value){

// 以 UTF-8 模式删除空字符

$value = preg_replace('/\s+/u', '', $value);

// “?=”为正向预查,在任何开始匹配圆括号内的正则表达式模式的位置来匹配搜索字符串

// 这里的正则表达式匹配所有大写字符的前一个字符

$value = strtolower(preg_replace('/(.)(?=[A-Z])/u', "$1_", $value));

return $value;

}

// 附加一个:蛇形命名转换为大驼峰命名(首字母大写 如: FileName、 LineNumber、 MyFirstProgram)

function SnakeToUpperCamel($value){

$value = ucwords(str_replace(['_', '-'], ' ', $value));

$value = str_replace(' ', '', $value);

return $value;

}

php 字符串转驼峰,zhouqq - PHP 蛇形命名法(snake case)和驼峰命名法(camel case) 相互转换...相关推荐

  1. 驼峰,下划线(蛇形)和帕斯卡型一些转换

    /** 下划线转帕斯卡* user_name ----> UserName* house.user_name ----> UserName* userName ---> UserNa ...

  2. python大驼峰_匈牙利法、大小驼峰法(两种编程命名规则)

    一. 匈牙利命名法 开头字母用变量类型的缩写,其余部分用变量的英文或英文的缩写,要求单词第一个字母大写. 比如:   long lSum = 0;       //"l"是类型的缩 ...

  3. 匈牙利法、大小驼峰法(两种编程命名规则)

    一. 匈牙利命名法 开头字母用变量类型的缩写,其余部分用变量的英文或英文的缩写,要求单词第一个字母大写. 比如:   long lSum = 0;       //"l"是类型的缩 ...

  4. 小驼峰命名法(lower camel case)和大驼峰命名法(upper camel case)

    1.小驼峰式命名法(lower camel case): 第一个单词以小写字母开始,第二个单词的首字母大写.例如:firstName.lastName. 2.大驼峰式命名法(upper camel c ...

  5. jpa命名 多条件查询命名_JPA 2 | 动态查询与命名查询

    jpa命名 多条件查询命名 JPA有自己的查询语言,称为JPQL. JPQL与SQL非常相似,主要区别在于JPQL与应用程序中定义的实体一起使用,而SQL与数据库中定义的表和列名称一起使用. 在定义将 ...

  6. java中类的命名规则_java类方法属性的命名规范介绍

    java类方法属性的命名规范介绍,java命名总结.一个优秀的程序员,首先要培养良好的编程习惯,为了提高代码的可读性,必须有好的命名规范. 这篇文章是小编结合网上的很多资料整理出来的,若有不当或错误的 ...

  7. java标签组件命名_java编程规范之java命名规范

    想要成为一个优秀的程序员,首先要培养良好的编程习惯,为了提高代码的可读性,必须有好的命名规范. 这篇文章是小编结合网上的很多资料整理出来的,若有不当或错误的地方,欢迎大家指正 在文章开始前,为方便阅读 ...

  8. java 批量重命名_Java实现文件批量重命名

    Windows操作系统可以实现重命名文件操作,却不能实现批量重命名.本实例实现了批量重命名功能,可以将一个文件夹内同一类型的文件按照一定的规则批量重命名.用户可以给出重命名模板,程序可以根据模板对相应 ...

  9. 【整理】Python中的re.search和re.findall之间的区别和联系 + re.finall中带命名的组,不带命名的组,非捕获的组,没有分组四种类型之间的区别

    之前自己曾被搞晕过很多次. 后来使用这些函数次数多了之后,终于比较清楚的弄懂了两者之间的区别和关系了. 尤其是一些细节方面的注意事项了. 在看下面的总结和代码之前,请先确保你对如下基本概念已经有所了解 ...

最新文章

  1. GirdView的文本属性对象省略溢出标记设置
  2. java.util.concurrent.CyclicBarrier;
  3. Android Studio系列教程一--下载与安装
  4. 【STM32】【STM32CubeMX】STM32CubeMX的使用之七:定时器输入捕获实现超声波测距
  5. 汉化)称号插件.php,[管理|信息][UD]NameTags——基于权限的称号插件,兼容计分板,GUI显示[1.7.10-1.12.2]...
  6. 深入Java集合学习系列:HashSet的实现原理
  7. spring 容器技术入门
  8. Service 中的 onStart 和 onStartCommand
  9. Navicat怎样导入Excel表格数据
  10. 实对称矩阵特征值按大小排序
  11. #深度解析# GAN(生成对抗神经网络)
  12. 东大22春实用写作X《实用写作》在线平时作业1百分非答案
  13. 2021年度学习总结
  14. matlab无法打开wps的xls文件,wps表格无法打开xls文件相关解决方法
  15. CTFlearn-misc(fore/prog)-wp(3)
  16. 开发一个Canvas小游戏 实现一个游戏“引擎”
  17. 嵌入式应用角度学习BLE栈
  18. 添加系统调用的方法,2.6.35(没有测试)
  19. EasyExcel 复杂数据导出
  20. - 在c语言中是什么意思?

热门文章

  1. MySQL结果集 数据查询(重点)
  2. centos7 yum安装mysql后启动不起来问题
  3. 感知机:Perceptron Learning Algorithm
  4. Spring注入静态类型
  5. 20162302 第七周作业
  6. java词频统计——web版支持
  7. 告别ASP.NET操作EXCEL的烦恼(总结篇)(转)
  8. [转载] 【全面总结】Tensorflow 2.0+与Keras的联系与应用(含model详解)
  9. 编程没点为什么,生活就是十万个为什么
  10. 2019.7.19刷题统计