PHP基础之 string 字符串函数
/*=================常用字符串处理函数==================
ltrim(); //去掉字符串左边的空格
rtrim(); //去掉字符串右边的空格
trim(); //去掉字符串两边的空格
strlen(); //获取字符串长度
strrev(); //反转字符串顺序
strtolower(); //所有字符转小写
strtoupper(); //所有字符转大写
ucfirst(); //将字符串中第一个字符改为大写
ucwords(); //将字符串中每个单词第一个字母改为大写
explode(); //使用一个字符串分割另一个字符串
implode(); //联合一组字符串
substr(); //取子字符串
strstr(); //返回字符串中某字符串开始处至结束的字符串
strrchr(); //返回组后出现的字符串到结束的位置。
strpos(); //寻找字符串中某字符最先出现的位置。
strrpos(); //寻找字符串中某字符最后出现的位置。
str_pad(); //字符串的填补函数
*/
/* 1、ltrim(); //去掉字符串左边的空格
示例:*/
$str1 = " abc ";
$newStr1 = ltrim($str1);
echo "结果:".$newStr1."长度:".strlen($newStr1);//结果:abc 长度:5 /* 2、rtrim(); //去掉字符串右边的空格
示例:*/
$newStr2 = rtrim($str1);
echo "结果:".$newStr2."长度:".strlen($newStr2);//结果: abc长度:5 /* 3、trim(); //去掉字符串两边的空格
示例:*/
$newStr3 = trim($str1);
echo "结果:".$newStr3."长度:".strlen($newStr3);//结果:abc长度:3 /* 4、strlen(); //获取字符串长度
示例:*/
echo strlen($str1); //7 /* 5、strrev(); //反转字符串顺序
示例:*/
$str2 = "how are You";
echo strrev($str2);//uoy era woh /* 6、strtolower(); //所有字符转小写
示例:*/
echo strtolower($str2);//how are you /* 7、strtoupper(); //所有字符转大写
示例:*/
echo strtoupper($str2);//HOW ARE YOU /* 8、ucfirst(); //将字符串中第一个字符改为大写
示例:*/
echo ucfirst($str2);//How are You /* 9、ucwords(); //将字符串中每个单词第一个字母改为大写
示例:*/
echo ucwords($str2);//How Are You /* 10、explode(参数1,参数2,[参数3]) 分割字符串返回一个数组类型 【等同于C# split()方法】
参数1:分割符
参数2:要分割的字符串
参数3:可选参数。分割为几份
示例:*/
$strArr1 = explode(" ", $str2);
$strArr2 = explode(" ", $str2,2);
var_dump($strArr1);
var_dump($strArr2);
//array(3) {
// [0]=>
// string(3) "how"
// [1]=>
// string(3) "are"
// [2]=>
// string(3) "You"
// }
// array(2) {
// [0]=>
// string(3) "how"
// [1]=>
// string(7) "are You"
// } /* 11、implode(参数1,参数2) 拼接字符串 【等同于javascript数组对象的join()方法】
参数1:拼接符
参数2:要处理的字符串数组
示例:*/
$arr = array(2,8,5,6,1,7);
echo implode(",", $arr);//2,8,5,6,1,7 /* 12、substr(参数1,参数2,[参数3]) 截取字符串
参数1:要操作的字符串,
参数2:开始位置,
参数3:可选参数,要截取的长度。
示例:
*/
$str3 = "192.168.1.88";
echo substr($str3, 4);//168.1.88
echo substr($str3, 4,3);//168 /* 13、strstr(参数1,参数2) 从指定的字符串开始,截取字符串
// 此方法还可以写作strchr()
参数1:要操作的字符串
参数2:开始位置的字符串
示例:*/
echo strstr($str3, "6");//68.1.88 /* 14、strpos(参数1,参数2,[参数3]) 查找指定字符串出现的位置 【等价于C#中的IndexOf()方法】
参数1:操作的字符串
参数2:要查找的字符串
参数3:可选参数,开始位置。
示例:*/
$str4 = "Great hopes make great man";
echo strpos($str4, "o");//7
echo strpos($str4, "e",4);//9 /* 15、 strrpos(参数1,参数2) 查找指定字符串最后一次出现的位置 【等价于C#中的LastIndexOf()方法】
参数1:要操作的字符串
参数2:要查找的字符串
示例:*/
echo strrpos($str4, "a");//24
// 在路径中查找文件名D:\PHPEnv\ReadMe.txt
$path = "D:\PHPEnv\ReadMe.txt";
echo "文件名为:".substr($path, strrpos($path,"\\")+1);//文件名为:ReadMe.txt /* 16、str_pad(参数1,参数2,[参数3],[参数4]) 填补字符串
参数1:要操作的字符串
参数2:新字符串长度
参数3:可选参数,要填补的字符串
参数4:可选参数,填补类型 STR_PAD_BOTH、STR_PAD_RIGHT、STR_PAD_LEFT
示例:*/
echo str_pad($str4, 50,"=",STR_PAD_BOTH);//============Great hopes make great man============ /* 17、str_replace(参数1,参数2,str,count) 字符串替换 str_replace(search, replace, subject)
参数1:要替换的字符/数组
参数2:新的字符/数组
参数3:操作的字符串
count: 替换的个数
示例:*/
echo "\n";
echo str_replace("t", "M", $str4);//GreaM hopes make greaM man
$str="选1、选2、选3、选4";
$arr=array("1","2","3","4");
$arr1=array("a","b","c","d");
$str=str_replace($arr,$arr1,$str,$count);
echo "\n";
echo $str."==替换的个数:".$count; /* 18、strcmp(字符串1,字符串2) /strcasecmp(字符串1,字符串2)【二进制比较】
=0 - 如果两个字符串相等
<0 - 如果 string1 小于 string2
>0 - 如果 string1 大于 string2
示例:*/
echo "\n";
echo strcmp("Hello", "hello"); //-1 区分大小写比较(内部进行二进制级别比较)
echo strcasecmp("Hello", "hello"); //0 忽略大小写比较(内部进行二进制级别比较) /* 19、strnatcmp(字符串1,字符串2) 使用一种“自然”算法来比较两个字符串。【自然排序法比较】
strnatcasecmp(字符串1,字符串2);
在自然算法中,数字 "2" 小于数字 "10"。在计算机排序中,"2" 大于 "10",这是因为 "2" 大于 "10" 的第一个数字。
示例:*/
echo "\n";
echo strnatcmp("5", "20"); //-1 区分大小写比较
echo strnatcasecmp("H", "h"); //0 忽略大小写比较 /* 20、soundex(str)计算字符串的 soundex 键返回键值,表示一个英文单词的发音 【模糊比较】
similar_text(str1,str2,percent) 返回匹配数量
计算两个字符串的匹配字符的数目,参数3:存储百分比相似度的变量
示例:*/
echo "\n";
echo soundex("hello"); //H400
echo "\n";
echo similar_text("first", "fire",$pct);//3
echo("\n".$pct); //66.666666666667 /* 21、strtr(str,oldChr,newChr) 【转换特定的字符】
示例:*/
echo "\n";
echo strtr("hello word yes", "lo", "TW");//heTTW wWrd yes /* 22、stripslashes(str) 删除字符串中的反斜杠(用于清理从数据库或 HTML 表单中取回的数据。)
示例:*/
echo "\n";
echo stripcslashes("D:\PHPEnv\ReadMe.txt");//D:PHPEnvReadMe.txt /* 23、htmlentities(string,[quotestyle],[character-set]) 把字符转换为 HTML 实体
[quotestyle]:编码单引或双引号
ENT_COMPAT - 默认。仅编码双引号。
ENT_QUOTES - 编码双引号和单引号。
ENT_NOQUOTES - 不编码任何引号。
[character-set]:指定转换的编码
示例:*/
echo "\n";
echo stripcslashes("<div>hello</div><b>word</b>");//按HTML格式输出,标签会被解释执行 /* 24、strip_tags(str,[allow]) 默认剥去 HTML、XML 以及 PHP 的标签。
[allow]:指定要保留的标签
示例:*/
echo "\n";
echo strip_tags("<div>hello</div><b>word</b>","<b>");//过滤掉div保留b标签 /* 25、parse_str() 解析URL中传递的参数*/
parse_str("id=23&name=John%20Adams",$myArray);
print_r($myArray);
// Array
// (
// [id] => 23
// [name] => John Adams
// ) /* 26、 http_build_query(); 构造URL传递参数*/
$data = array('foo'=>'bar',
'baz'=>'boom',
'cow'=>'milk',
'php'=>'hypertext processor'); echo http_build_query($data);
/* 输出:
foo=bar&baz=boom&cow=milk&php=hypertext+processor
*/ //将对象构造为参数
class myClass {
var $foo;
var $baz; function myClass() {
$this->foo = 'bar';
$this->baz = 'boom';
}
} $data = new myClass(); echo http_build_query($data);
/* 输出:
foo=bar&baz=boom
*/ // URL编码处理函数
// urlencode();
// urldecode(); //其它:
echo "\n";
printf("%0.2f","222.25466"); //222.25 以小数输出,精确到2位小数 echo "\n";
echo ord("A");//只转码第一个字符为ASCII码 echo "\n";
printf("%c", 0x41); //A 将16进进制的数字转换为ASCII码表示的字符 echo "\n";
printf("%c", 0101); //A 第二个参数一定不能用单/双引号 echo "\n";
printf("%c", 65); //A 第二个参数一定不能用单/双引号 echo "\n";
printf("%c", '01000001'); //A echo "\n";
echo chr(100); //d
PHP基础之 string 字符串函数的更多相关文章
- Redis学习系列二之.Net开发环境搭建及基础数据结构String字符串
一.简介 Redis有5种基本数据结构,分别是string.list(列表).hash(字典).set(集合).zset(有序集合),这是必须掌握的5种基本数据结构.注意Redis作为一个键值对缓存系 ...
- java基础18 String字符串和Object类(以及“equals” 和 “==”的解析)
一.String字符串 问:笔试题:new String("abc")创建了几个对象?答:两个对象,一个对象是 位于堆内存,一个对象位于字符串常量池 class Demo17 { ...
- [lua]紫猫lua教程-命令宝典-L1-01-09. string字符串函数库
L1[string]01. ASCII码互转 小知识:字符串处理的几个共同的几点 1.字符串处理函数 字符串索引可以为负数 表示从字符串末尾开始算起 所有字符串处理函数的 字符串索引参数都使用 2.所 ...
- 5、SQL基础整理(字符串函数)
字符串函数 ASCII 返回字符串首字母的ascii编码 select ASCII('name') select ASCII(name) from xuesheng select *from xues ...
- mysql 开发基础系列5 字符串函数
字符串函数 1. concat (s1,s2,...sn) 连接里面的参数成一个字符串(注意上面写错了函数名称) SELECT CONCAT('ddd','CCC'); 2. insert(str ...
- C++ string 字符串函数详解
运算符重载 + 和 +=:连接字符串 =:字符串赋值 >.>=.< 和 <=:字符串比较(例如a < b, aa < ab) ==.!=:比较字符串 << ...
- php基础04:字符串函数
<?php //1.strlen(),strlen() 函数返回字符串的长度,以字符计. echo strlen("hello world"); echo "< ...
- 2、Python 基础类型 -- String 字符串类型
字符串常用的方法: 1.分割:string.split(str="", num=string.count(str)) 以 str 为分隔符切片 string,如果 num 有指 ...
- Python学习入门教程,字符串函数扩充详解
因有用户反映,在基础文章对字符串函数的讲解太过少,故写一篇文章详细讲解一下常用字符串函数.本文章是对:程序员带你十天快速入门Python,玩转电脑软件开发(三)中字符串函数的详解与扩充. 如果您想学习 ...
随机推荐
- Objective-C 再谈OC指针,对比C++/Java/Swift
1.Objective-C的指针 OC一直是人感觉比较变态的一门语言,为什么呢?因为它的每个变量都是指针型,多的都几乎让人忘了那个*的存在了. 比如我定义了一个Student的Class,new了st ...
- iOS设置圆角矩形和阴影效果
1.设置圆角矩形 //设置dropview属性 _dropView.backgroundColor=[[UIColor whiteColor] colorWithAlphaComponent:0.8] ...
- 通过broadcastreceiver 监听短信问题
在mainfest中 订阅 短信到来的广播时候 发现找不到 <action android:name="android.provider.Telephony.SMS_RECEIV ...
- HD2767Proving Equivalences(有向图强连通分量+缩点)
题目链接 题意:有n个节点的图,现在给出了m个边,问最小加多少边是的图是强连通的 分析:首先找到强连通分量,然后把每一个强连通分量缩成一个点,然后就得到了一个DAG.接下来,设有a个节点(每个节点对应 ...
- JavaScript Ajax之美~
JavaScript Ajax之美~ 曾经有一段时期,因为开发人员对JavaScript的滥用导致其遭受了一段时间的冷门时期,不被大家看好,后来,到了2005年,Google公司的很多技术都是用了aj ...
- Struts2入门-十分简单的登陆
Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互. 开始编写St ...
- Latent Semantic Analysis (LSA) Tutorial 潜语义分析LSA介绍 一
Latent Semantic Analysis (LSA) Tutorial 译:http://www.puffinwarellc.com/index.php/news-and-articles/a ...
- YOURPHP的分页完整版
html代码 <?php print_r($ser['searchtype']);?> <select name="searchtype"> <opt ...
- 使用.net Stopwatch class 来分析你的代码
当我们在调试,优化我们的代码的时候,想知道某段代码的真正的执行时间,或者我们怀疑某段代码,或是某几段代码执行比较慢, 需要得到具体的某段代码的具体执行时间的时候.有一个很好用的类Stopwatch. ...
- Tween + 缓动函数
Unity-Tween http://www.cnblogs.com/MrZivChu/p/UnityTween.html iTween: iTween大解构(一)之抛物线移动 http://blog ...