php基础知识之字符串处理

一、去除空格或其他字符函数(trim)

<?php

	$str='    abc   ';
	var_dump($str);				//string(10) " abc "
	var_dump(trim($str));		// string(3) "abc"


	$str='abcabcdefac';
	var_dump($str);				// string(11) "abcabcdefac"
	var_dump(trim($str,'bac'));//string(3) "def" 如果要去除多个字符可以连着写!
?>

二、大小写转换函数(strtoupper,strtolower)

<?php
	$str='test';
	var_dump($str);			//string(4) "test"
	$str1=strtoupper($str);	
	var_dump($str);			string(4) "test" 

	$str='TeSt';
	var_dump($str);			// string(4) "TeSt"
	var_dump(strtolower($str));	//string(4) "test"
	var_dump($str);			//string(4) "TeSt"
?>

三、字符串查找函数

1, substr_count — 计算字串出现的次数

substr_count ( string $haystack , string $needle [, int $offset = 0 [, int $length ]] ) : int

substr_count() 返回子字符串needle 在字符串 haystack 中出现的次数(整形)。注意 needle 区分大小写。

haystack:在此字符串中进行搜索。
needle:要搜索的字符串。
offset:开始计数的偏移位置。如果是负数,就从字符的末尾开始统计。
length:指定偏移位置之后的最大搜索长度。如果偏移量加上这个长度的和大于 haystack 的总长度,则打印警告信息。 负数的长度 length 是从 haystack 的末尾开始统计的。

<?php
		$str='testteste';
		var_dump(substr_count($str,'te'));//int(3)

		$text2 = 'gcdgcdgcd';
		echo substr_count($text2, 'gcdgcd');	// 1

		$str='testteste';
		var_dump(substr_count($str,'te',1,8));// int(2)  不能超出字符串
?>

2.strpos— 查找字符串首次出现的位置

strpos ( string $haystack , mixed $needle [, int $offset = 0 ] ) : int

返回 needle 在 haystack 中首次出现的数字位置。

haystack:在该字符串中进行查找。
needle:如果 needle 不是一个字符串,那么它将被转换为整型并被视为字符的顺序值。
offset:如果提供了此参数,搜索会从字符串该字符数的起始位置开始统计。 如果是负数,搜索会从字符串结尾指定字符数开始。

<?php
	header('content-type:text/html;charset=utf-8');
	$str='testteste';
	var_dump(strpos($str, 't1'));	//bool(false)
	if(strpos($str, 't')===false){
		echo '没找到!';
	}else{
		echo '找到啦!';
	}

	$str='testteste';
	var_dump(strpos($str, 't',1));		//int(3)
?>

3.strstr— 查找字符串的首次出现

strstr ( string $haystack , mixed $needle [, bool $before_needle = FALSE ] ) : string

返回 haystack 字符串从 needle 第一次出现的位置开始到 haystack 结尾的字符串。返回字符串的一部分或者 FALSE(如果未发现 needle)。

该函数区分大小写。如果想要不区分大小写,请使用 stristr()。
如果你仅仅想确定 needle 是否存在于 haystack 中,请使用速度更快、耗费内存更少的 strpos() 函数。

haystack:输入字符串。
needle:如果 needle 不是一个字符串,那么它将被转化为整型并且作为字符的序号来使用。
before_needle:若为 TRUE,strstr() 将返回 needle 在 haystack 中的位置之前的部分。

	<?php
		header('content-type:text/html;charset=utf-8');
		$str='testteste';
		var_dump($str);					//string(9) "testteste" 
		var_dump(strstr($str,'s'));		//string(7) "stteste" 
		var_dump(strstr($str,'s',true));//string(2) "te"
	?>
posted @   coderwcb  阅读(56)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示