PHP下划线和驼峰字符串相互转换

PHP下划线和驼峰字符串相互转换

class AppBlogString
{
    /*
     * 下划线转驼峰
     */
    public static function convertUnderline($str)
    {
        $str = preg_replace_callback('/([-_]+([a-z]{1}))/i', function ($matches) {
            return strtoupper($matches[2]);
        }, $str);
        return $str;
    }

    /*
     * 驼峰转下划线
     */
    public static function humpToLine($str)
    {
        $str = preg_replace_callback('/([A-Z]{1})/', function ($matches) use ($str) {
            if ($matches[0] != substr($str, 0, 1))
                return '_' . strtolower($matches[0]);
            else
                return strtolower($matches[0]);
        }, $str);
        return $str;
    }

    public static function convertHump(array $data)
    {
        $result = [];
        foreach ($data as $key => $item) {
            if (is_array($item) || is_object($item)) {
                $result[$this->humpToLine($key)] = $this->convertHump((array) $item);
            } else {
                $result[$this->humpToLine($key)] = $item;
            }
        }
        return $result;
    }
}

版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/02/19/php-underline-hump-string-conversion/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
海报
PHP下划线和驼峰字符串相互转换
PHP下划线和驼峰字符串相互转换 class AppBlogString { /* * 下划线转驼峰 */ public static function convertUnderline($str) { ……
<<上一篇
下一篇>>
文章目录
关闭
目 录