PHP[PHP源码阅读]strtolower和strtoupper函数

字符串的操作函数中,字符串的尺寸写转换也终于相比常用的函数,其底层实现也相比较简单,下边来一研商竟。

自我在github上有对PHP源码更详实的笺注。感兴趣的可以扫描一下,给个star。PHP5.4源码表明。能够由此commit记录查阅已添加的注释。

strtolower

string strtolower ( string $string )

将字符串转换成小写字符。

strtoupper

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

相关文章