> php教程 > php手册 > [PHP源码阅读]strtolower和strtoupper函数,strtoupper

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

WBOY
풀어 주다: 2016-06-13 08:38:44
원래의
1473명이 탐색했습니다.

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

字符串的操作函数中,字符串的大小写转换也算是比较常用的函数,其底层实现也比较简单,下面来一探究竟。

我在github上有对PHP源码更详细的注解。感兴趣的可以围观一下,给个star。PHP5.4源码注解。可以通过commit记录查看已添加的注解。

strtolower

<p>string strtolower ( string $string )</p>
로그인 후 복사

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

strtoupper

<p>string strtoupper ( string $string )</p>
로그인 후 복사

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

运行示例

<span>$str</span> = 'Hello World'<span>;
</span><span>$new_str</span> = <span>strtolower</span>(<span>$str</span>); <span>//</span><span> hello world</span>

<span>$str</span> = 'hello world'<span>;
</span><span>$new_str</span> = strupper(<span>$str</span>); <span>//</span><span> HELLO WORLD</span>
로그인 후 복사

代码运行步骤

<p>拷贝一份字符串</p>
<p>php_strtolower/php_strtoupper进行转换</p>
로그인 후 복사

源码解读

两个函数的核心操作都差不多,讲一下strtolower,另一个是类似的。
php_strtolower函数的核心代码如下:

c = (unsigned <span>char</span> *<span>)s;
e </span>= c+<span>len;

</span><span>//</span><span> 遍历s,逐个变为小写</span>
<span>while</span> (c <<span> e) {
  </span>*c = tolower(*<span>c);
  c</span>++<span>;
}
</span><span>return</span> s;
로그인 후 복사

 

这个函数就是遍历整个字符串,逐个转成小写字符。这也是一个经典的指针操作。

 

原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知。

如果本文对你有帮助,请点下推荐吧,谢谢^_^

 

最后再安利一下,我在github有对PHP源码更详细的注解。感兴趣的可以围观一下,给个star。PHP5.4源码注解。可以通过commit记录查看已添加的注解。

更多源码文章,欢迎访问个人主页继续查看:hoohack

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿