PHP中用到的一些字符串函数
/*常用的字符串输出函数
*
* echo() 输出字符串
* print() 输出一个或多个字符串
* die() 输出一条信息,并退出当前脚本
* printf() 输出格式化字符串
* sprintf() 把格式化的字符串写入到一个变量中
*
*/
#ucfirst
#将字符串中的首字母转换为大写
$str="string";
echo ucfirst($str);
echo "<hr><br/>";
#ucwords()
#将字符串中的每个单词的首字母大写
$ucword="hello everyone!";
echo ucwords($ucword);
echo "<hr><br/>";
#ltrim() rtrim() trim()
#去除空格
$str="123 This is a test.....";
echo ltrim($str,"0..9")."<br/>"; #去除左侧的数字
echo rtrim($str,".")."<br/>";
echo trim($str,"0..9A..Z.")."<br/>"; #去除字符串两端的大写字母,数字还有.
#HTML相关的字符串格式化函数
#nl2br()
#将字符串中的\n转换为"<br/>"
$str="this is \n hello world";
echo nl2br($str).'<br/>';
#htmlspecialchars()
#将html标记以字符的形式显示,不进行解释
$str="<b>hello world</b>";
echo $str."<br/>";
echo htmlspecialchars($str);
echo "<hr><br/>";
#addcslashes
#添加反斜线
$str=addcslashes("foo[]","A..z");
echo $str."<br/>";
echo addcslashes("zoo['.']",'A..z')."<br/>";
#convert_uuencode()
#利用uudecode的方法对字符串进行编码
$string="hello world";
$str= convert_uuencode($string);
echo $str."<br/>";
echo convert_uudecode($str)."<br/>";
#html_entity_decode ( string $string [, int $flags = ENT_COMPAT | ENT_HTML401 [, string $encoding = 'UTF-8' ]] )
#与htmlentities方法相反,将进行编码后的html字符转换为浏览器能够编译的形式
$a="I want a bright <b>future</b>";
$b= htmlentities($a)."<br/>";
echo $b;
echo html_entity_decode($b);
echo "<hr><br/>";
#htmlspecialchars_decode ( string $string [, int $flags = ENT_COMPAT | ENT_HTML401 ] )
#与htmlspecialchars函数相反,将HTML实体转换为字符
$c=htmlspecialchars($a);
echo $c."<br/>";
echo htmlspecialchars_decode($c)."<br/>";
echo "<hr><br/>";
#lcfirst ( string $str )
#将字符串的首字符小写
$str="Hello World";
# echo lcfirst($str)."<br/>";
#md5_file ( string $filename [, bool $raw_output = false ] )
#对文件进行md5加密
#
$string="password";
$str=md5($string);
if($str=="5f4dcc3b5aa765d61d8327deb882cf99"){
echo "The password is right <br/>";
}
#parse_str ( string $str [, array &$arr ] )
#将一个字符串进行解析,解析成变量和数组的形式
$str = "first=value&arr[]=foo+bar&arr[]=baz";
parse_str($str,$input);
print_r($input);
echo "<hr><br/>";
#string sha1_file ( string $filename [, bool $raw_output = false ] )
#计算文件的散列值
foreach(glob("C:/lamp/appache2/htdocs/*.php") as $ent){
if(is_dir($ent)){
continue;
}
echo $ent."(SHA1:".sha1_file($ent).")<br/>";
}
echo "<hr><br/>";
#int similar_text ( string $first , string $second [, float &$percent ] )
#计算两个字符串的相似度,通过引用方式传递第三个参数,similar_text() 将
#计算相似程度百分数。
$string1="rogerzhalili";
$string2="zhangjieroger";
if(similar_text($string1,$string2,$percent)){
echo $string1." and ".$string2." has the similarity of:".$percent."<br/>";
}
echo "<hr><br/>";
#string str_shuffle ( string $str )
#打乱一个字符串
$string="I want you to solve this problem";
echo str_shuffle($string)."<br/>";
#array str_split ( string $string [, int $split_length = 1 ] )
#按照指定的长度对字符串进行分割
$arr=str_split($string,3);
#str_word_count ( string $string [, int $format = 0 [, string $charlist ]] )
#统计字符串中单词的数量
echo "<hr><br/>";
#int strripos ( string $haystack , string $needle [, int $offset = 0 ] )
#以不区分大小写的方式查找指定字符串在目标字符串中最后一次出现的位
#置。与 strrpos() 不同,strripos() 不区分大小写。
#offset用于指定从那个位置开始查找
$haystack='ababcd';
$needle='Ab';
echo "the last".$needle."postion is:".strripos($haystack,$needle)."<br/>";
echo strrpos($haystack,'ab');
echo "<hr><br/>";
#string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] )
#返回 haystack 字符串从 needle 第一次出现的位置开始到 haystack 结
#尾的字符串。 该函数区分大小写。如果想要不区分大小写,请使用
#stristr()。
$a="the First test";
$needle="Fi";
echo strstr($a,$needle)."<br/>";
if($c=strstr($a,"Fio")){
echo "find".$c."<br/>";
}
else
{
echo "not find the string!<br/>";
}
echo "<hr><br/>";
#int substr_count ( string $haystack , string $needle [, int $offset = 0 [, int $length ]] )
#查找$needle子字符串在$haystack中出现的次数,$needle区分大小写
$hay="la la wa la wa wa lala";
echo substr_count($hay,"la")."<br>";
#int preg_match_all ( string $pattern , string $subject [, array &$matches [, int $flags = PREG_PATTERN_ORDER [, int $offset = 0 ]]] )
#正则匹配,将匹配后的结果存放到$matches(如果指定了$matches的话)
preg_match_all("/\(? (\d{3})? \)? (?(1) [\-\s] ) \d{3}-\d{4}/x",
"Call 555-1212 or 1-800-555-1212", $phones);
echo "<pre>";
print_r($phones);
echo "</pre>";
echo "<hr><br/>";
#preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
#搜索subject中匹配pattern的部分, 以replacement进行替换.
$string = 'April 15, 2003';
$pattern = '/(\w+) (\d+), (\d+)/i';
$replacement = '${1}1,$3';
echo preg_replace($pattern,$replacement,$string);
echo "<hr><br/>";
#array preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )
#通过一个正则表达式分隔给定字符串.
$str = 'string';
$chars = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);
print_r($chars);
PHP中用到的一些字符串函数的更多相关文章
- Mysql 字符串函数 详解
字符串函数是最常用的一种函数了,如果大家编写过程序的话,不妨回过头去看看自己使用过的函数,可能会惊讶地发现字符串处理的相关函数占已使用过的函数很大一部分.MySQL中字符串函数也是最丰富的一类函数,表 ...
- awk 字符串函数
awk 提供了许多强大的字符串函数,见下表: awk 内置字符串函数 gsub(r,s) 在整个 $0 中用 s 替代 r gsub(r,s,t) 在整个 t 中用 s 替代 r index(s,t) ...
- js进阶js中支持正则的四个常用字符串函数(search march replace split)
js进阶js中支持正则的四个常用字符串函数(search march replace split) 一.总结 代码中详细四个函数的用法 search march replace split 二.js进 ...
- NeuCF源码中用到的模块(函数)
论文:<Neural Collaborative Filtering>源码中用到的模块(函数) from keras.layers import Embedding, Input, Den ...
- ThinkPHP 模板substr的截取字符串函数
ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...
- SQL字符串函数
LEN() :计算字符串长度(字符的个数.)datalength();//计算字符串所占用的字节数,不属于字符串函数.测试varchar变量与nvarchar变量存储字符串a的区别.见备注1.LOWE ...
- Python3中的字符串函数学习总结
这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...
- TSQL 字符串函数:截断和查找
字符串截断函数是指:Stuff 和 SubString,字符串查找函数是:CharIndex 和 PatIndex 一,SubString 截取子串 最常用的字符串函数,用于截取特定长度的子串. SU ...
- c#编程基础之字符串函数
c#常用的字符串函数 例一: 获取字符串的大小写函数 ToLower():得到字符串的小写形式 ToUpper():得到字符串的大写形式 注意: 字符串时不可变的,所以这些函数都不会直接改变字符串的内 ...
随机推荐
- 调度器(scheduler)
调度器(schedule)为游戏提供定时事件和定时调用服务. 调度器(schedule)的功能和事件监听器(eventlistener)的功能有点类似:都是在特定情况下调用某个事先准备好的回调函数. ...
- TOJ 1139.Compromise
2015-06-03 问题简述: 大概就是输入两段文本(用小写英文字母表示),分别用#表示一段话的结束输入,输出这两个文本的最长公共子序列. 简单的LCS问题,但是输入的是一段话了,而且公共部分比较是 ...
- J - 搞笑版费马大定理
J - 搞笑版费马大定理 Time Limit:1000MS Memory Limit:131072KB 64bit IO Format:%lld & %llu Submit ...
- BZOJ 2716: [Violet 3]天使玩偶( CDQ分治 + 树状数组 )
先cdq分治, 然后要处理点对答案的贡献, 可以以询问点为中心分成4个区域, 然后去掉绝对值(4种情况讨论), 用BIT维护就行了. --------------------------------- ...
- [C#参考]利用Socket连续发送数据
这个例子只是一个简单的连续发送数据,接收数据的DEMO.因为最近做一个项目,要求robot连续的通过Socket传回自己的当前的位置坐标,然后客户端接收到坐标信息,在本地绘制地图,实时显示robot的 ...
- css区分ie6,7,ff
IE6能识别*,但不能识别 !important,IE7能识别*,也能识别!important;FF不能识别*,但能识别!important; 可以这样区别FF,IE7,IE6: background ...
- 解决Windows 程序界面闪烁问题的一些经验
原帖地址:http://blog.joycode.com/yaodong/archive/2004/11/26/39764.aspx 一般的windows 复杂的界面需要使用多层窗口而且要用贴图来美化 ...
- Codeforces 700B Connecting Universities(树形DP)
[题目链接] http://codeforces.com/problemset/problem/700/B [题目大意] 给出 一棵n个节点的树, 现在在这棵树上选取2*k个点,两两配对,使得其配对的 ...
- Uva 1612 Guess
Thinking about it: 题目要求最后一名(也就是第N位)的分数要尽量的大,那么就一定要求第N-1名的分数也要尽量大.假如N-1可以取400和500,那么N-1应该取500,如果取400, ...
- ollicle.com: Biggerlink – jQuery plugin
ollicle.com: Biggerlink – jQuery plugin Biggerlink – jQuery plugin Purpose Demo Updated for jQuery 1 ...