关于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
(0)

相关推荐

  • php 中的4种标记风格介绍

    今天看论坛的时候,看到一新手的错误代码,看了很久都没发现错误.我正纳闷呢?(这是为什么呢?)呵呵. 后来才发现标记问题,他使用的是短标记.而我的php.in配置里并没有开启它.哎惭愧呀! 1.xml风格(标准风格推荐使用) 复制代码 代码如下: <?php echo"这是xml风格的标记"; ?> xml风格的标记是常用的标记,也是推荐使用的标记,服务器不能禁用,该风格的标记在xml,xhtml中都可以使用. 2.脚本风格 复制代码 代码如下: <script lan

  • 关于PHPDocument 代码注释规范的总结

    1. 安装phpDocumentor(不推荐命令行安装)在http://manual.phpdoc.org/下载最新版本的PhpDoc放在web服务器目录下使得通过浏览器可以访问到点击files按钮,选择要处理的php文件或文件夹还可以通过该指定该界面下的Files to ignore来忽略对某些文件的处理.然后点击output按钮来选择生成文档的存放路径和格式.最后点击create,phpdocumentor就会自动开始生成文档了. 2.如何写PHP规范注释所有的文档标记都是在每一行的 * 后

  • PHP中读取文件的几个方法总结(推荐)

    1.fread string fread ( int $handle , int $length ) fread() 从 handle 指向的文件中读取最多 length 个字节.该函数在读取完最多 length 个字节数,或到达 EOF 的时候,或(对于网络流)当一个包可用时,或(在打开用户空间流之后)已读取了 8192 个字节时就会停止读取文件,视乎先碰到哪种情况. fread() 返回所读取的字符串,如果出错返回 FALSE. <?php $filename = "/usr/loca

  • PHP常用技巧总结(附函数代码)

    PHP文件读取函式 复制代码 代码如下: //文件读取函式 function PHP_Read($file_name) { $fd=fopen($file_name,r); while($bufline=fgets($fd, 4096)){ $buf.=$bufline; } fclose($fd); return $buf; } ?> 文件写入函式 复制代码 代码如下: //文件写入函式 function PHP_Write($file_name,$data,$method="w&quo

  • PHP缓冲区用法总结

    本文实例总结了PHP缓冲区用法.分享给大家供大家参考,具体如下: 我们先来看一段代码. <?php for ($i=10; $i>0; $i--) { echo $i; flush(); sleep(1); } ?> 按照php手册里的说法: 该函数将当前为止程序的所有输出发送到用户的浏览器. 上面的这段代码,应该隔一秒钟输出一次$i.但是实际中却不一定是这样.有可能是等了10秒钟后,所有的输出同时呈现出来. 好,我们来改一下这段代码,改成 <?php ob_end_clean()

  • php代码优化及php相关问题总结

    1,在函数中,传递数组时使用 return 比使用 global 要高效比如 function userloginfo($usertemp){$detail=explode("|",$usertemp);return $detail;}$login=userloginfo($userdb); 比 function userloginfo($usertemp){global $detail;$detail=explode("|",$usertemp);}userlog

  • PHP编程风格规范分享

    说明:本规范由 EasyChen 借鉴 SINA网络应用开发部<C++开发规范>和互动技术部<PHP4开发规范>,以及phpDocument规范 整理出的开发规范.我觉得非常不错, 适合PHP的开发,给大家参考,养成一个良好的编程风格是非常有必要的. 第1章 命名规范 1.1变量 1.1.1全局变量 全局变量使用$g_开头,如$g_data_list. 1.1.2 一般变量 一般的变量使用小写字母命名,单词之间使用下划线分隔. 变量名字应该使用名词或者形容词+名词的方式.如$val

  • 浅析PHP7新功能及语法变化总结

    标量类型声明 有两种模式: 强制 (默认) 和 严格模式. 现在可以使用下列类型参数(无论用强制模式还是严格模式): 字符串(string), 整数 (int), 浮点数 (float), 以及布尔值 (bool).在旧版中,函数的参数声明只能是(Array $arr).(CLassName $obj)等,基本类型比如Int,String等是不能够被声明的 <?php function check(int $bool){ var_dump($bool); } check(1); check(tr

  • php文件缓存方法总结

    为大家分享很全的php文件缓存,供大家参考,具体内容如下 <?php class cache { private static $_instance = null; protected $_options = array( 'cache_dir' => "./", 'file_name_prefix' => 'cache', 'mode' => '1', //mode 1 为serialize model 2为保存为可执行文件 ); /** * 得到本类实例 *

  • 学习PHP的数组总结【经验】

    PHP有很多关于数组的函数,方便数组操作. 定义: 数组每个实体包含两个项:key和value,可以通过查询键来获取其相应的值.这些键可以是数值(numerical)键或关联(associative)键.数值键与值没有真正的联系,它们只是值在数组中的位置. PHP提供了很多遍历数组的方法,无法使用关联键还是数值键,都依赖于一种称为数组指针的特性. 创建数组 PHP不需要在创建数组时指定其大小,因为PHP是一种松散的语言,所以不需要在使用数组前先行声明.尽管没有限制,PHP仍提供了正式和非正式的数

  • php好代码风格的阶段性总结

    本文总结了php好代码的风格,分享给大家供大家参考,具体如下: 1.避免使用魔数 if($age<18){ } 这个18不太明白为什么要这样子. 可以将28定义在一个变量里面,这个变量命名表明了这个值的含义 $adult_age = 18;//成年的分界点年龄 if($age<$adult_age){ } 2.函数的返回结果:不要使用一个变量来存储返回结果 一旦你知道了返回结果,就应该马上返回.这样做的好处,是可以减少错误. 3.函数带有很多的参数.不要超过三个 如果参数很多,尽量聚合成一个m

随机推荐