驼峰命名和下划线命名经常需要互转, 尤其是在与前端通过json格式数据交互时,相当方便。

下面介绍php的实现方式.

PHP驼峰命名转下划线命名//驼峰命名转下划线命名

function convertCamelToUnderline($str)

{

$dstr = preg_replace_callback('/([A-Z]+)/',function($matchs)

{

return '_'.strtolower($matchs[0]);

},$str);

return trim(preg_replace('/_{2,}/','_',$dstr),'_');

}

PHP下划线命名转驼峰命名//下划线命名到驼峰命名

function convertUnderlineToCamelCase($str)

{

$array = explode('_', $str);

$result = $array[0];

$len=count($array);

if($len>1)

{

for($i=1;$i

{

$result.= ucfirst($array[$i]);

}

}

return $result;

}

还有另一种方法,比较简单/**

* 下划线转驼峰

* 思路:

* step1.原字符串转小写,原字符串中的分隔符用空格替换,在字符串开头加上分隔符

* step2.将字符串中每个单词的首字母转换为大写,再去空格,去字符串首部附加的分隔符.

*/

function convertUnderlineToCamelCase($uncamelized_words,$separator='_')

{

$uncamelized_words = $separator. str_replace($separator, " ", strtolower($uncamelized_words));

return ltrim(str_replace(" ", "", ucwords($uncamelized_words)), $separator );

}

/**

* 驼峰命名转下划线命名

* 思路:

* 小写和大写紧挨一起的地方,加上分隔符,然后全部转小写

*/

function convertCamelToUnderline($camelCaps,$separator='_')

{

return strtolower(preg_replace('/([a-z])([A-Z])/', "$1" . $separator . "$2", $camelCaps));

}

希望本文所述对大家的php程序设计有所帮助。

标签: 驼峰

php 带下划线的函数,[宜配屋]听图阁相关推荐

  1. 太极图python自定义函数绘制_[宜配屋]听图阁

    效果如下所示: # -*- coding: utf-8 -*- import turtle # 绘制太极图函数 def draw_TJT(R): turtle.screensize(800, 600, ...

  2. java将数组加上千分号_[宜配屋]听图阁

    对于较大数字,添加千分号可以方便快速地读出数值.千分号是指从最右边开始,每隔三位加个逗号.这种写法很广泛,来源大概是因为英文中 Thousand,千.million,百万.billion,十亿 都是隔 ...

  3. python上下文管理关键字_[宜配屋]听图阁

    前言 如果你有阅读源码的习惯,可能会看到一些优秀的代码经常出现带有 "with" 关键字的语句,它通常用在什么场景呢?今天就来说说 with 和 上下文管理器. 对于系统资源如文件 ...

  4. python写抽奖转盘_[宜配屋]听图阁

    本文实例为大家分享了python实现转盘效果的具体代码,供大家参考,具体内容如下 #抽奖 面向对象版本 import tkinter import time import threading clas ...

  5. python中控脚本_[宜配屋]听图阁

    由于考勤机与OA对接,OA会在每天定时取考勤机数据,但是需要考勤机是连接状态,所以搜索了下相关教程,写了个脚本自动连接.完全是个Python小白,代码烂,仅作为笔记. 理论上支持所有程序的每天自动开启 ...

  6. python怎么放音乐_[宜配屋]听图阁

    本文实例使用Tkinter实现在线音乐播放器的具体代码,供大家参考,具体内容如下 1.先使用Tkinter库写界面 2.写点击按钮触发的事件 (1).使用网易音乐的api,返回数据包装成json格式数 ...

  7. python写词法分析器_[宜配屋]听图阁

    编译原理老师要求写一个java的词法分析器,想了想决定用python写一个. 目标 能识别出变量,数字,运算符,界符和关键字,用excel表打印出来. 有了目标,想想要怎么实现词法分析器. 1.先进行 ...

  8. python对数组的基本操作_[宜配屋]听图阁

    这篇文章主要介绍了简单了解python数组的基本操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一,创建列表 创建一个列表,只要把逗号分隔的不同 ...

  9. 怎么用python打印照片_[宜配屋]听图阁

    这篇文章主要介绍了Python如何使用字符打印照片,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1. 前言 第一次在学校机房里见到计算机,还是上古 ...

最新文章

  1. 基于OpenCV实战的图像处理:色度分割
  2. Linux内核链表访问链表头指针,linux内核——链表结构分析
  3. Android Studio 导入 AOSP 源码 1
  4. P1421 小玉买文具【入门题】
  5. 【Oracle--原创1】已经连到空闲例的解决办法
  6. App开发定制的种类:企业需要开发哪种App?
  7. redis 字符串基本操作
  8. AMPL_网络项目问题
  9. Linux libmodbus库编译,libmodbus编译安装使用
  10. 初学者-Python 网页爬取小说
  11. firefoxos :add a webidl,and use
  12. 操作系统-文件存储空间管理
  13. 甲乙分别自A,B两地同时相向步行,2小时后中途相遇,甲乙步行速度都提高了1千米/时,当甲到达B地后立刻按原路向A地返行,当乙到达A地后也立刻按原路向B地返行,甲乙两人在第一次相遇后3小时36分
  14. 手把手教你自制U盘重装win10系统专业版(纯净版)+激活【图文教程】
  15. 微信公众号前后端分离授权登录
  16. python平安经_读完一本平安经是怎样的体验?
  17. 网易我的世界服务器正在维护,网易《我的世界》Hypixel中国版服务器将停止运营...
  18. [年终总结]愿你永远清澈明朗,眼里有光
  19. Python循环 - 胖子老板来包烟
  20. 中兴通讯如何以5G技术实现数字化转型?

热门文章

  1. Fiddler抓取数据并分析(完整的配置教程)
  2. 利用T-SQL语句快速清理ZBLOG程序的SQL SERVER2012数据库内容
  3. 观点 | 有区块链就一定能创新吗?区块链改变了什么、改变不了什么?
  4. winform代码:关联窗体数据更新,删除dataGridview中选中的一行或多行
  5. ORU-10027: buffer overflow, limit of 10000 bytes
  6. 一本关于 女仆小说的构思,有能力写的看下
  7. 面试必问:十大经典排序算法总结
  8. 大数据笔记2019.5.10
  9. 你还是只会用数组吗?不懂Java集合,还想找工作?(集合概述)
  10. 文本挖掘预处理之向量化与Hash Trick