本文实例总结了PHP字符串处理技巧。分享给大家供大家参考,具体如下:
Demo1.php
<?php //源代码是文本形式,页面显示是 web 形式 $str = " PHP "; //清理一下两边的空格 ltrim 只清理左,rtrim只清理右边 echo ltrim($str); echo "<br/>"; echo rtrim($str); echo "<br/>"; //两边都清理 echo trim($str); //echo chop($str); ?>
Demo2.php
<?php $str = "This is 一站式建网站 This is a OneStopWeb"; //但是,我现在想要在网页中实现换行 //在回帖的时候,一个回车就是 //我们通过函数来实现转换过程 echo nl2br($str); ?>
Demo3.php
<?php //将所有字符转换成 HTML $str = "<strong>阅谁问君诵,水落清香浮。</strong>"; //echo htmlentities($str); //我们只要转换特殊字符即可 //echo htmlspecialchars($str);//<strong>阅谁问君诵,水落清香浮。</strong> echo strip_tags($str); //阅谁问君诵,水落清香浮。 ?>
Demo4.php
<?php $str = "This is "一站式建网站" This is a OneStopWeb"; //对于即将插入数据库的字符串,把有问题的字符处理一下 //echo addslashes($str); //This is "一站式建网站" \n This is a OneStopWeb $a = addslashes($str); //这个 $a 就是写入数据库的,我拿出来的话,就会有 这个符号 echo stripcslashes($a); //首先将写进数据库的字符串通过 addslashes() 函数过滤一下,然后拿出来的时候 //再通过 stripcslashes() 解析一下显示 ?>
Demo5.php
<?php
//将字符串转换成大写
echo strtoupper("oneStopWeb");//ONESTOPWEB
//将字符串转换成小写
echo strtolower("oneStopWeb");//onestopweb
//将第一个字母转换成大写
echo ucfirst("oneStopWeb"); //OneStopWeb
?>
Demo6.php
<?php $str = "oneStopWeb"; //echo str_pad($str,11)."is good!"; //oneStopWeb is good! //oneStopWeb### //echo str_pad($str,13,"#") echo str_pad($str,18,"#",STR_PAD_BOTH); echo "<br/>"; echo str_pad($str,18,"#",STR_PAD_LEFT); echo "<br/>"; echo str_pad($str,18,"#",STR_PAD_RIGHT); /** * ####oneStopWeb#### * ########oneStopWeb * oneStopWeb######## * */ ?>
Demo7.php
<?php
//explode -- 使用一个字符串分割另一个字符串
//返回的是一个数组
//explode 第一参数是分割字符串,第二个参数是要被分割的字符串
$email = explode("@","oneStopWeb@163.com");
//print_r($email); //Array ( [0] => oneStopWeb [1] => 163.com )
//分割完了之后,我经过一轮筛选,还要重新组合
// $arr = array("oneStop","@","163.com");
// $str = implode("&",$arr);
// echo $str;//oneStop&@&163.com
$str = implode(" - ",$email);
echo $str; //oneStopWeb - 163.com
?>
Demo8.php
<?php
// $str = "I will be back";
// $arr = explode(" ",$str);
// print_r($arr); //Array ( [0] => I [1] => will [2] => be [3] => back )
$str = "I,will.be#back";
$tok = strtok($str,",.#");
//echo $tok;
while($tok){
echo $tok."<br/>";
$tok = strtok(",.#");
}
// $str = "I will be back";
// $tok = strtok($str," ");
// //echo $tok;
// while($tok){
// echo $tok."<br/>";
// $tok = strtok(" ");
// }
// $tok = strtok(" ");
// echo $tok;//Iwill
// //指针没有下移,而是重新来了一次
// $tok = strtok($str," ");
// echo $tok;
?>
Demo9.php
<?php $str = "oneStopWeb@163.com"; //中间的参数表示开始的位置,位置是从 0 开始的,最后一个参数,是取出的个数 echo substr($str,0,5) ;//oneSt ?>
Demo10.php
<?php //$str = "oneStopWeb@163.com"; $str = "阅谁问君诵,水落清香浮。"; //中文乱码 print_r(str_split($str)); ?>
Demo11.php
<?php $str = "oneStopWeb@163.com"; echo strrev($str); //moc.361@beWpotSeno ?>
Demo12.php
<?php
//通过 == 来比较字符串是否一致
//最后的返回值是布尔值
//echo "a" == "a";
//比较两个字符串
//echo strcmp("a","b");
// if(strcmp("a","a") == 0){
// echo "相等";
// }
//echo strcasecmp("B","b"); //不区别大小写
//目前是非自然排序
//echo strcmp("2","10");//1
//如果按照自然排序方式比较呢?
echo strnatcmp("2","10");//-1
?>
Demo13.php
<?php
//strspn
//后面两个数字的参数,是从第几位开始,取多少位
echo strspn("one","oneStopWeb@163.com",1,5);
?>
Demo14.php
<?php
//测试字符串的长度
echo strlen("oneStopWeb@163.com") ;
?>
Demo15.php
<?php
//测试字符串出现的频率
echo substr_count("oneStopWeb@163.com","o");
?>
Demo16.php
<?php
//从指定的字符串开始输出之后的字符串
echo strstr("oneStopWeb@163.com","@");
//不区别大小写的
echo stristr("oneStopWeb@163.com","s");
?>
Demo17.php
<?php
//查找某字符串最先出现的位置
//位置是从第 0 个位置开始计算,W第一次出现在第 7 个位置上
echo strpos("oneStopWeb@163.com","W");
//最后出现的位置
echo strrpos("oneStopWeb@163.com","o");
?>
Demo18.php
<?php
//字符串替换
//第一个参数表示要查找的字符串(部分)
//第二个参数表示要替换成的字符串(部分)
//第三个参数表示原来的被替换的完整字符串
//echo str_replace("one","yi","oneStopWeb@163.com");//yiStopWeb@163.com
//str_ireplace 是不区分大小写
//echo str_ireplace("oNe","yi","oneStopWeb@163.com");//yiStopWeb@163.com
//从第一个位置开始(参数3),取出 5 个来(参数4),将它替换成 ###(参数2)
echo substr_replace("oneStopWeb@163.com","###",0,5);
?>
Demo19.php
<?php //取中文长度 $str = "阅谁问君诵,水落清香浮。"; //用普通的 strlen 取一个中文字,就算两个 //echo strlen($str) ; //使用 mb_strlen 来取中文,有第二个参数,字符编码 echo mb_strlen($str,"GBK");//12 //如果你使用普通的 strlen 这个函数,我取 1 个字符 //采用 mb_substr 来取中文字符 echo mb_substr($str,2,1,"GBK");//问 ?>
Demo20.php
<?php $str = "阅谁问君诵,水落清香浮。"; //求出 o 最先出现的位置 //中文的算法,两个字符一个中文字 //mb 就算一个 //echo strpos($str,"问");//4 //按中文一个字符来计算,这样不会出现半个中文的状态 echo mb_strpos($str,"问",0,"GBK"); ?>
Demo21.php
<?php // $str = "阅谁问君诵,水落清香浮。" ; // echo mb_substr($str,0,1,"GBK"); $str ="阅谁问君诵,水落清香浮。"; //这个就无所谓用 mb_strstr echo strstr($str,"水"); ?>
Demo22.php
<?php $str ="阅谁问君诵,水落清香浮。"; echo mb_substr_count($str,"问","GBK"); ?>
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。