php에는 문자열을 가로채는 기능이 있습니다. 숫자는 혼합된 한자를 가로채지 못합니다. 후자가 주로 사용하기 쉽습니다. 학습을 위해.
php //构造字符串 $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; echo "原字符串:".$str." "; //按各种方式进行截取 $str1 = substr($str,5); echo "从第5个字符开始取至最后:".$str1." "; $str2 = substr($str,9,4); echo "从第9个字符开始取4个字符:".$str2." "; $str3 = substr($str,-5); echo "取倒数5个字符:".$str3." "; $str4 = substr($str,-8,4); echo "从倒数第8个字符开始向后取4个字符:".$str4." "; $str5 = substr($str,-8,-2); echo "从倒数第8个字符开始取到倒数第2个字符为止:".$str5." "; ?>
/* ------------------------------------------------------ 参数: $str_cut 需要截断的字符串 $length 允许字符串显示的最大长度 程序功能:截取全角和半角(汉字和英文)混合的字符串以避免乱码 ------------------------------------------------------ */ function substr_cut($str_cut,$length) { if (strlen($str_cut) > $length) { for($i=0; $i < $length; $i++) if (ord($str_cut[$i]) > 128) $i++; $str_cut = substr($str_cut,0,$i).".."; } return $str_cut; } ?>
<strong> 1.//字符串的反转函数 </strong>$str='hello';//---->olleh echo strrev($str).'<br />';//这是系统提供的函数 //下来自己写一个函数来实现反转 $strArr = str_split($str);//Array ( [0] => h [1] => e [2] => l [3] => l [4] => o ) $str1=''; for($i=count($strArr)-1; $i>=0; $i--){ $str1.=$strArr[$i]; } echo $str1; <strong>2.//获取文件的后缀名 .jpg或者jpg都可以 </strong>$file='abc.exe.jpg'; echo strrchr($file,'.').'<br />';//这个是使用的系统函数,查找的文件名 echo strrev(strstr(strrev($file),'.',true)).'<br />';//strstr()返回的是字符串首次出现,加上true表示返回的是. 之前的字符串 echo substr($file,strrpos($file,'.')).'<br />';//strrpos()返回的是最后一次.出现的位置,然后在进行截取 $strArr=explode('.',$file); echo $strArr[count($strArr)-1].'<br />';//explode()函数将字符串按点分割成一个数组 //echo array_pop($strArr).'<br />'; //echo end($strArr).'<br />'; echo pathinfo($file,PATHINFO_EXTENSION).'<br /> ';//pathinfo()函数返回的是文件的路径的信息 echo strrev(substr(strrev($file),0,strpos($file,'.'))).'<br /> '; <strong>3.//将1234567890----->1,234,567,890 </strong>$str='1234567890'; $strArr=str_split(strrev($str),3); echo strrev(implode(',',$strArr)).'<br />';//---->1,234,567,890