Heim > Backend-Entwicklung > PHP-Tutorial > 驼峰 - php匹配字符串中大写字母的位置

驼峰 - php匹配字符串中大写字母的位置

WBOY
Freigeben: 2016-06-06 20:41:25
Original
1337 Leute haben es durchsucht

变量名用的是驼峰,数据库中字段中的是下划线,现在想把userId等变量批量转换成user_id,怎么样获取大写字母在字符串中的位置?

回复内容:

变量名用的是驼峰,数据库中字段中的是下划线,现在想把userId等变量批量转换成user_id,怎么样获取大写字母在字符串中的位置?

http://3v4l.org/kC52c

<code>echo preg_replace_callback("/[A-Z]/", function($ma){return "_".strtolower($ma[0]);}, "userId"); //user_id
</code>
Nach dem Login kopieren

谢谢 @公子 的回答,让我又发现了一个这么实用的网站。

公子的回答,会把 OpenZIP 变成 open_z_i_p

下面是我的代码:

http://3v4l.org/hIQUW

<code>echo strtolower(preg_replace('/((?</code>
Nach dem Login kopieren

可以试试 OpenZIP 变成了 open_zip

From:laravel4

<code>     /**
     * Convert a string to snake case.
     *
     * @param  string  $value
     * @param  string  $delimiter
     * @return string
     */
    function snake($value, $delimiter = '_')
    {
        $replace = '$1'.$delimiter.'$2';

        return ctype_lower($value) ? $value : strtolower(preg_replace('/(.)([A-Z])/', $replace, $value));
    }
</code>
Nach dem Login kopieren

echo preg_replace('/([A-Z])/', '_$1', 'AbcDefGhijk');貌似这样更简单一点

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage