PHP实现驼峰命名和下划线命名互转-php教程

资源魔 31 0
本篇文章教各人完成驼峰定名以及下划线定名互转,正在php开发中常常需求两种定名法相互转换,上面为各人提供两种完成形式.

第一种办法效率绝对差一些,完成形式以下:

 //驼峰定名转下划线定名
function toUnderScore($str)
{
    $dstr = preg_replace_callback('/([A-Z]+)/',function($matchs)
    {
        return '_'.strtolower($matchs[0]);
    },$str);
    return trim(preg_replace('/_{2,}/','_',$dstr),'_');
}
 
//下划线定名到驼峰定名
function toCamelCase($str)
{
    $array = explode('_', $str);
    $result = $array[0];
    $len=count($array);
    if($len>1)
    {
        for($i=1;$i<$len;$i++)
        {
            $result.= ucfirst($array[$i]);
        }
    }
    return $result;
}

第二种办法更为巧妙高效,保举应用第二种办法

/**
* 下划线转驼峰
* 思绪:
* step1.原字符串转小写,原字符串中的分隔符用空格交换,正在字符串扫尾加之分隔符
* step2.将字符串中每一个单词的首字母转换为年夜写,再去空格,去字符串首部附加的分隔符.
*/
function camelize($uncamelized_words,$separator='_')
{
    $uncamelized_words = $separator. str_replace($separator, " ", strtolower($uncamelized_words));
    return ltrim(str_replace(" ", "", ucwords($uncamelized_words)), $separator );
}

/**
* 驼峰定名转下划线定名
* 思绪:
* 小写以及年夜写紧挨一同之处,加之分隔符,而后全副转小写
*/
function uncamelize($camelCaps,$separator='_')
{
    return strtolower(preg_replace('/([a-z])([A-Z])/', "$1" . $separator . "$2", $camelCaps));}

保举教程:《PHP教程》

以上就是PHP完成驼峰定名以及下划线定名互转的具体内容,更多请存眷资源魔其它相干文章!

标签: php php开发教程 php开发资料 php开发自学

抱歉,评论功能暂时关闭!