Home  >  Article  >  Backend Development  >  A brief discussion on PHP source code 2: About strlen, strtolower, strtoupper, ord, chr functions

A brief discussion on PHP source code 2: About strlen, strtolower, strtoupper, ord, chr functions

不言
不言Original
2018-06-28 16:30:212359browse

This article mainly introduces a brief discussion of PHP source code 2: about strlen, strtolower, strtoupper, ord, chr functions, which have certain reference value. Now I share them with you. Friends in need can refer to them

int strlen (string string)
Return the length of the string
There is no relevant implementation in the standard extension. Use Z_STRLEN, Z_STRLEN_P or Z_STRLEN_PP to obtain the length in other extension functions
string strtolower (string str )
Change a string to lowercase, the implementation is as follows
[Classic source code]

char *php_strtolower(char *s, size_t len){
              unsigned char *c, *e; 
              c = s;
              e = c+len;               while (c < e) {
                            *c = tolower(*c);
                            c++;
              }
              return s;}

Although this is a simple program that traverses the string and changes each character to lowercase , but this is a standard procedure using pointers.

string strtoupper (string string)
Change a string to uppercase
The code implementation is similar to the above program except that the tolower function is changed to toupper
string chr (int ascii)
Returns a single character corresponding to ascii.
The essence is to return a string of length 1
[Source code]

           temp[0] = (char) Z_LVAL_PP(num);
              temp[1] = 0;
              RETVAL_STRINGL(temp, 1, 1);

int ord (string string)
Return the ASCII value of the character
The essence is to return The ASCII value of the first character of the string
[Source code]

 RETURN_LONG((unsigned char) Z_STRVAL_PP(str)[0]);

The above is the entire content of this article. I hope it will be helpful to everyone's learning. For more related content, please pay attention to the PHP Chinese website!

Related recommendations:

A brief discussion of PHP source code 1: explode and implode functions

The above is the detailed content of A brief discussion on PHP source code 2: About strlen, strtolower, strtoupper, ord, chr functions. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn