Maison > Article > développement back-end > [PHP源码阅读]strtolower和strtoupper函数
字符串的操作函数中,字符串的大小写转换也算是比较常用的函数,其底层实现也比较简单,下面来一探究竟。
我在github上有对PHP源码更详细的注解。感兴趣的可以围观一下,给个star。 PHP5.4源码注解。可以通过 commit记录查看已添加的注解。
string strtolower ( string $string )
将字符串转换成小写字符。
string strtoupper ( string $string )
将字符串转换成大写字符。
$str = 'Hello World';$new_str = strtolower($str); // hello world$str = 'hello world';$new_str = strupper($str); // HELLO WORLD
拷贝一份字符串
php_strtolower/php_strtoupper进行转换
两个函数的核心操作都差不多,讲一下strtolower,另一个是类似的。php_strtolower函数的核心代码如下:
c = (unsigned char *)s;e = c+len;// 遍历s,逐个变为小写while (c < e) { *c = tolower(*c); c++;}return s;
这个函数就是遍历整个字符串,逐个转成小写字符。这也是一个经典的指针操作。
原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知。
如果本文对你有帮助,请点下推荐吧,谢谢^_^
最后再安利一下,我在github有对PHP源码更详细的注解。感兴趣的可以围观一下,给个star。 PHP5.4源码注解。可以通过 commit记录查看已添加的注解。
更多源码文章,欢迎访问个人主页继续查看: hoohack