web 字符串处理 php,php学习笔记之字符串常见操作总结

本文实例讲述了php字符串常见操作。分享给大家供大家参考,具体如下:

字符串的定义

可以用单引号或双引号来定义字符串

$str = "hello";

$str = 'hello';

>?

heredoc和nowdoc定义大段字符串

区别:和单引号与双引号定义字符串的区别相同

//heredoc的使用

$str3 = <<

hello

world!

ok;$a

puzhong!

MARK;

echo $str3."
";

//nowdoc的使用

$str4 = <<

hello

world!

ok;$a

puzhong!

MARK;

echo $str4."
";

?>

单引号和双引号的区别

1)转义区别:单引号转义情况:\\、\',其他全部原样输出

双引号转义情况:\,、\”、\n、\r、\t等

2)速度区别:单引号中不能加载变量,而双引号中可以加载变量

速度上,单引号要快于双引号

字符串的常用函数

1)计算字符串的长度

strlen():按照字符串占用的字节数来计算长度

mb_strlen():按照编码来计算字符串的长度

$str = "hello";

$str2 = "中国123";

echo strlen($str)."
"; //输出5

echo strlen($str2)."
";//输出9,utf8字符编码一个汉字占3个字节

echo mb_strlen($str2,"utf-8")."
";//输出5,按照u8编码,计算字符的长度

?>

2)计算子字符串的位置函数

strpos():区分大小写进行查找子串首次的出现的位置

stripos():不分区大小写进行查找子串首次出现的位置

strrpos():区分大小写进行查找子串最后一次的出现的位置

strripos():不区分大小写进行查找子串最后一次的出现的位置

$str = "aAbBcdefgAa";

$char = "A";

echo strpos($str, $char)."
";//输出1,区分大小写

echo stripos($str,$char)."
";//输出0,不区分大小写

echo strrpos($str,$char)."
";//输出9,区分大小写

echo strripos($str, $char)."
";输出10,//不区分大小写

?>

3)替换字符串函数

str_replace():区分大小写替换字符串中的内容

str_ireplace():不分区大小写替换字符串中的内容

strtr():成批地进行替换(可以使用数组的某种对应关系)

substr_replace():按照字符串的位置和指定的长度来替换字符串中的内容

$str = "hi,Fuck";

echo str_replace("fuck","f**k",$str)."
";//输出:hi,Fuck,区分大小写,所以没有找到要替换的内容

echo str_ireplace("fuck", "f**k", $str)."
";//输出:hi,f**k,不区分大小写

$str = "男人,女人,男孩,女孩";

echo strtr($str, array("男"=>"女","女"=>"男"));//输出:女人,男人,女孩,男孩

$str = "hello,webbc,welcome";

echo substr_replace($str,"webxx",6,5);//输出:hello,webxx,welcome

?>

4)截取子字符串函数

substr():按照起始位置和指定长度来截取字符串

$str = "hello,webbc,welcome!";

echo substr($str,6,5)."
";//输出:webbc

echo substr($str,6,-1)."
";//输出:webbc,welcome,负数表示结束位置从后往前数

echo substr($str,-8,-1);//输出:welcome,负数表示起始位置从后往前数

?>

5)合并/拆分字符串

explode():将字符串按照某个字符拆分成数组

implode():将数组按照某个字符合并成字符串

$str = "勇士,马刺,雷霆,快船,开拓者,小牛,灰熊,火箭";

$arr = explode(",",$str);

var_dump($arr);

/*

输出:array

0 => string '勇士' (length=6)

1 => string '马刺' (length=6)

2 => string '雷霆' (length=6)

3 => string '快船' (length=6)

4 => string '开拓者' (length=9)

5 => string '小牛' (length=6)

6 => string '灰熊' (length=6)

7 => string '火箭' (length=6)

*/

echo implode($arr,"-");//输出:勇士-马刺-雷霆-快船-开拓者-小牛-灰熊-火箭

?>

6)处理空格

ltrim():删除左导空格

rtrim():删除右导空格

trim():删除左导和右导空格

$str = " hello world ";

echo ltrim($str)."a"."
";//输出:hello world a

echo "a".rtrim($str)."
";//输出:a hello world

echo trim($str)."
";//输出:hello world

?>

7)字符串转义函数

addslashes():对特殊字符进行转义

stripslashes():将转义过的字符还原

$str = "Is your ' name O'reilly?";

$a = addslashes($str);

echo $a;//输出:Is your \' name O\'reilly?

echo stripslashes($a);//输出:Is your ' name O'reilly?

8)HTML和字符串的转换

htmlspecialchars():将字符串转换成HTML实体

htmlspecialchars_decode():将HTML实体转换成字符串

$str = "我是加粗  字体";

echo $str; //输出:我是加粗 字体

$htmlstr = htmlspecialchars($str);

echo $htmlstr;//输出:我是加粗  字体

echo htmlspecialchars_decode($htmlstr);//输出:我是加粗 字体

?>

9)检索字符串

strstr():查找字符串的首次出现

substr_count():计算字串出现的次数

$str = 'name@example.com';

echo strstr($str, '@'); //输出:@example.com

$str = 'This is a test';

echo substr_count($str, 'is'); //输出:2

?>

10)字符串的转换函数

strtolower():全部转换为小写

strtoupper():全部转换为大写

ucfirst():将字符串的首字母转换为大写

ucwords():将字符串的每个单词的首字母大写

$str = "i haVe a Dream";

echo strtolower($str)."
";//输出:i have a dream

echo strtoupper($str)."
";//输出:I HAVE A DREAM

echo ucfirst($str)."
";//输出:I haVe a Dream

echo ucwords($str)."
";//输出:I HaVe A Dream

?>

希望本文所述对大家PHP程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值