PHP 字符串相关操作方法 并置运算符 查找字符位置strlen() 获取字符串长度mb_strlen() 获取中文等字符串长度strpos() 返回字符串在另一字符串中第一次出现的位置(
并置运算符 (.) 用于把两个字符串值连接起来。
$a = 'hello';$b = 'world!'echo $a.' '.$b;// hello world
$a = 'hello';echo strlen($a);// 5
与 strlen 不同的时,它可以通过设置字符编码从而返回对应的字符数,很好的处理了中文字符串的长度问题。
使用 mb_strlen 要开启 mbstring 扩展。
语法
strlen(string[, string $encoding = mb_internal_encoding() ] ))
mb_internal_encoding() 用于设置/获取内部字符编码。
参数 | 描述 |
---|---|
string | 必需。规定要检查的字符串。 |
encoding | 可选。字符编码。如果省略,则使用内部字符编码。 |
$a = '你好';echo mb_strlen($a);// 2echo strlen($a);// 6
如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE。
语法
strpos(string,find,start)
参数 | 描述 |
---|---|
string | 必需。规定被搜索的字符串。 |
find | 必需。规定要查找的字符。 |
start | 可选。规定开始搜索的位置。 |
$a = 'hello world!';echo strpos($a,'world');// 6
如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE。
语法
stripos(string,find,start)
参数 | 描述 |
---|---|
string | 必需。规定被搜索的字符串。 |
find | 必需。规定要查找的字符。 |
start | 可选。规定开始搜索的位置。 |
$a = 'hello world!';echo stripos($a,'World');// 6
如果在字符串中找到匹配,该函数会返回最后一个匹配的字符位置。如果未找到匹配,则返回 FALSE。
语法
strrpos(string,find,start)
参数 | 描述 |
---|---|
string | 必需。规定被搜索的字符串。 |
find | 必需。规定要查找的字符。 |
start | 可选。规定开始搜索的位置。 |
$a = 'hello world!';echo strrpos($a,'world');// 6
如果在字符串中找到匹配,该函数会返回最后一个匹配的字符位置。如果未找到匹配,则返回 FALSE。
语法
strripos(string,find,start)
参数 | 描述 |
---|---|
string | 必需。规定被搜索的字符串。 |
find | 必需。规定要查找的字符。 |
start | 可选。规定开始搜索的位置。 |
$a = 'hello world!';echo strripos($a,'World');// 6
语法
strstr(string,search,before_search)
参数 | 描述 |
---|---|
string | 必需。规定被搜索的字符串。 |
search | 必需。规定要搜索的字符串。如果该参数是数字,则搜索匹配该数字对应的 ASCII 值的字符。 |
before_search | 可选。一个默认值为 “false” 的布尔值。如果设置为 “true”,它将返回 search 参数第一次出现之前的字符串部分。 |
$a = 'hello world!';echo strstr($a,'world');// world!
语法
stristr(string,search,before_search)
参数 | 描述 |
---|---|
string | 必需。规定被搜索的字符串。 |
search | 必需。规定要搜索的字符串。如果该参数是数字,则搜索匹配该数字对应的 ASCII 值的字符。 |
before_search | 可选。一个默认值为 “false” 的布尔值。如果设置为 “true”,它将返回 search 参数第一次出现之前的字符串部分。 |
$a = 'hello world!';echo stristr($a,'World');// world!
注释:如果 start 参数是负数且 length 小于或等于 start,则 length 为 0。
语法
substr(string,start,length)
参数 | 描述 |
---|---|
string | 必需。规定要返回其中一部分的字符串。 |
start | 必需。规定在字符串的何处开始。 正数 - 在字符串的指定位置开始 负数 - 在从字符串结尾的指定位置开始 0 - 在字符串中的第一个字符处开始 |
length | 可选。规定要返回的字符串长度。默认是直到字符串的结尾。 正数 - 从 start 参数所在的位置返回 负数 - 从字符串末端返回 |
echo substr("Hello world",6);// world
注释:如果 start 参数是负数且 length 小于或等于 start,则 length 为 0。
语法
mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] ) : string
参数 | 描述 |
---|---|
string | 必需。规定要返回其中一部分的字符串。 |
start | 必需。规定在字符串的何处开始。 正数 - 在字符串的指定位置开始 负数 - 在从字符串结尾的指定位置开始 0 - 在字符串中的第一个字符处开始 |
length | 可选。规定要返回的字符串长度。默认是直到字符串的结尾。 正数 - 从 start 参数所在的位置返回 负数 - 从字符串末端返回 |
encoding | 可选。字符编码。如果省略,则使用内部字符编码。 |
echo mb_substr("世界你好", 0, 2);// 世界echo substr("世界你好", 0, 2);// �
注释:子串是区分大小写的。
注释:该函数不计数重叠的子串
注释:如果 start 参数加上 length 参数大于字符串长度,该函数则生成一个警告
substr_count(string,substring,start,length)
参数 | 描述 |
---|---|
string | 必需。规定要检查的字符串。 |
substring | 必需。规定要检索的字符串。 |
start | 可选。规定在字符串中何处开始搜索。 |
length | 可选。规定搜索的长度。 |
echo substr_count("Hello world. The world is nice","world");// 2
如果 start 参数是负数且 length 小于或者等于 start,则 length 为 0
substr_replace(string,replacement,start,length)
参数 | 描述 |
---|---|
string | 必需。规定要检查的字符串。 |
replacement | 必需。规定要插入的字符串。 |
start | 必需。规定在字符串的何处开始替换。 正数 - 在字符串的指定位置开始 负数 - 在从字符串结尾的指定位置开始 0 - 在字符串中的第一个字符处开始 |
length | 可选。规定要替换多少个字符。默认是与字符串长度相同。 正数 - 被替换的字符串长度 负数 - 从字符串末端开始的被替换字符数 0 - 插入而非替换 |
echo substr_replace("Hello","world",0);// world
join() 函数是 implode() 函数的别名。
语法
join(separator,array)
参数 | 描述 |
---|---|
separator | 可选。规定数组元素之间放置的内容。默认是 “”(空字符串)。 |
array | 必需。要组合为字符串的数组。 |
$arr = array('Hello','World!','Beautiful','Day!');echo join(" ",$arr);// Hello World! Beautiful Day!
语法
explode(separator,string,limit)
参数 | 描述 |
---|---|
separator | 必需。规定在哪里分割字符串。 |
string | 必需。要分割的字符串。 |
limit | 可选。规定所返回的数组元素的数目。 可能的值: 大于 0 - 返回包含最多 limit 个元素的数组 小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组 0 - 会被当做 1, 返回包含一个元素的数组 |
$str = "1.2.3";print_r (explode(".",$str));// Array ( [0] => 1 [1] => 2 [2] => 3 )
lcfirst() 函数把字符串中的首字符转换为小写。
echo lcfirst("Hello world!");// hello world!
ucfirst() 函数把字符串中的首字符转换为大写。
echo ucfirst("hello world!");// Hello world!
ucwords() 函数把每个单词的首字符转换为大写。
echo ucwords("hello world!");// Hello World!
strtoupper() 函数把所有字符转换为大写。
echo strtoupper("hello world!");// HELLO WORLD!
strtolower() 函数把所有字符转换为小写。
echo strtolower("HELLO WORLD!");// hello world!
注意此处是字符,只要左右包含预设值中的字符就会被删除
$str = "Hello World!";echo rtrim($str,"World!");// Hello (注意还有一个空格)
语法
rtrim(string,charlist)
参数 | 描述 |
---|---|
string | 必需。规定要检查的字符串。 |
charlist | 可选。规定从字符串中删除哪些字符。如果省略该参数,则移除下列所有字符: “\0” - NULL “\t” - 制表符 “\n” - 换行 “\x0B” - 垂直制表符 “\r” - 回车 " " - 空格 |
$str = "Hello World!";echo '-'. ltrim($str,"Hello");// - World!
语法
ltrim(string,charlist)
参数 | 描述 |
---|---|
string | 必需。规定要检查的字符串。 |
charlist | 可选。规定从字符串中删除哪些字符。如果省略该参数,则移除下列所有字符: “\0” - NULL “\t” - 制表符 “\n” - 换行 “\x0B” - 垂直制表符 “\r” - 回车 " " - 空格 |
$str = "Hello World!";echo trim($str,"Hed!");// llo Worl
语法
trim(string,charlist)
参数 | 描述 |
---|---|
string | 必需。规定要检查的字符串。 |
charlist | 可选。规定从字符串中删除哪些字符。如果省略该参数,则移除下列所有字符: “\0” - NULL “\t” - 制表符 “\n” - 换行 “\x0B” - 垂直制表符 “\r” - 回车 " " - 空格 |
$str = "Hello";echo sha1($str);// f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0
语法
sha1(string,raw)
参数 | 描述 |
---|---|
string | 必需。规定要计算的字符串。 |
raw | 可选。规定十六进制或二进制输出格式: TRUE - 原始 20 字符二进制格式 FALSE - 默认。40 字符十六进制数 |
$str = "Hello";echo md5($str);// 8b1a9953c4611296a827abf8c47804d7
语法
md5(string,raw)
参数 | 描述 |
---|---|
string | 必需。规定要计算的字符串。 |
raw | 可选。规定十六进制或二进制输出格式: TRUE - 原始 16 字符二进制格式 FALSE - 默认。32 字符十六进制数 |
该函数必须遵循下列规则:
语法
str_replace(find,replace,string,count)
参数 | 描述 |
---|---|
find | 必需。规定要查找的值。 |
replace | 必需。规定替换 find 中的值的值。 |
string | 必需。规定被搜索的字符串。 |
count | 可选。一个变量,对替换数进行计数。 |
该函数必须遵循下列规则:
语法
str_ireplace(find,replace,string,count)
参数 | 描述 |
---|---|
find | 必需。规定要查找的值。 |
replace | 必需。规定替换 find 中的值的值。 |
string | 必需。规定被搜索的字符串。 |
count | 可选。一个变量,对替换数进行计数。 |
echo strrev("Hello World!");// !dlroW olleH
来源地址:https://blog.csdn.net/lhkuxia/article/details/128682391
--结束END--
本文标题: PHP 字符串相关常用操作方法
本文链接: https://lsjlt.com/news/402934.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0