关于php中一些字符串总结

yipeiwu_com6年前PHP代码库

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;
}
?>




1.//字符串的反转函数
$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;
 
2.//获取文件的后缀名 .jpg或者jpg都可以
$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 /> ';
 
3.//将1234567890----->1,234,567,890
$str='1234567890';
$strArr=str_split(strrev($str),3);
echo strrev(implode(',',$strArr)).'<br />';//---->1,234,567,890

相关文章

基于PHP开发中的安全防范知识详解

PHP代码安全和XSS,SQL注入等对于各类网站的安全非常中用,尤其是UGC(User Generated Content)网站,论坛和电子商务网站,常常是XSS和SQL注入的重灾区。这...

基于PHP编程注意事项的小结

 1、php隐性的三元操作符(?:)优先级问题: 例1:复制代码 代码如下:    $person = $who or $person = "la...

php数组索引的Key加引号和不加引号的区别

今天在看一个PHP博客时留意了这么一句话:“PHP中的索引KEY值如果不用引号括起来的话,会将索引KEY值解释为一个常量,当找不到该常量的定义时,才将其解释为一个字符串”。我有点不太相信...

php5.6.x到php7.0.x特性小结

本文总结分析了php5.6.x到php7.0.x特性。分享给大家供大家参考,具体如下: php5.6.x到php7.0.x特性 1.标量类型声明 字符串(string), 整数 (int...

php通过array_merge()函数合并关联和非关联数组的方法

本文实例讲述了php通过array_merge()函数合并关联和非关联数组的方法。分享给大家供大家参考。具体分析如下: array_merge()是一个用于合并数组的php函数,后一个数...