PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例

417次阅读
没有评论

如何在 php 中把驼峰样式的字符串转换成下划线样式的字符串。例:输入是 FooBar 的话,输出则是 foo_bar

以下是用正则的方式去完成,既然用到正则,方法肯定就不只一种,我们看下下面的方式

echo strtolower(preg_replace('/(?<=[a-z])([A-Z])/', '_$1', 'fooBar'));
//output:foo_bar

echo strtolower(preg_replace('/(?<=[a-z])([A-Z])/', '_$1', 'foo'));
//output:foo

echo strtolower(preg_replace('/(?<=[a-z])([A-Z])/', '_$1', 'fooBarB'));
//output:foo_bar_b

如何在 php 中把下划线样式的字符串转换成驼峰样式的字符串。例:输入是 foo_bar 的话,输出则是 FooBar

$str = preg_replace_callback('/_+([a-z])/',function($matches){print_r($matches); //Array ([0] => _b [1] => b )
    return strtoupper($matches[1]);
},'foo_bar');
echo $str; //fooBar


$str = preg_replace_callback('/_+([a-z])/',function($matches){return strtoupper($matches[1]);
},'foo');
echo $str; //foo


$str = preg_replace_callback('/_+([a-z])/',function($matches){return strtoupper($matches[1]);
},'foo_bar_b');
echo $str; //fooBarB

 

正文完
有偿技术支持加微信
post-qrcode
 
评论(没有评论)
验证码