关于PHP内置的字符串处理函数详解


Posted in PHP onFebruary 04, 2017

字符串的特点

1.  其他类型的数据用在字符串类型处理函数中,会自动将其转化成字符串后,在处理

<?php
echo substr("abcdefghijklmn",2,4),"<br>";  //cdef
//使用数字会自动转化为字符串
echo substr(123456,2,4);  //3456
?>

2. 可以将字符串视为数组,当做字符集合来看待

<?php
$str="abcdefg";

//下面这两种方法都可以输出想要的字符
echo $str[2]."<br>";
//但是为了区分数组我们常用下面一种
echo $str{2}."<br>";
?>

强大的内置的字符串处理函数

1. 常用的字符串输出函数

echo()
print()
die()----exit()
printf()    格式化字符串
sprintf()   返回格式化的字符串

2. 常用的字符串格式化函数

去掉字符
ltrim();   去掉左边的字符串(默认去掉空格)
rtrim();   去掉右边的字符串
trim();    去掉两边的字符串

<?php
$str="  abc  ";

echo strlen($str)."<br>";
echo strlen(ltrim($str))."<br>";
echo strlen(rtrim($str))."<br>";
echo strlen(trim($str))."<br>";

$str1="123This is Test";

//第二个参数指定要删除的字符(串)
echo ltrim($str1,'1')."<br>";
//删除所有的数字  0..9表示范围
echo ltrim($str1,'0..9')."<br>";
?>

添加字符串

str_pad();   添加字符串(默认在右边添加)

<?php
$str="hello";

//默认从右边补充
echo str_pad($str,10,"@")."<br>";
//两边补充
echo str_pad($str,10,"@",STR_PAD_BOTH)."<br>";
//从左边补充
echo str_pad($str,10,"@",STR_PAD_LEFT)."<br>";
?>

大小写转换

strtolower();   所有的字符都转化成小写
strtoupper();   所有的字符都转化成大写
ucfirst();      首字母转化成大写
ucword();       每个单词首字母转成大写

<?php
$str="My name is TOM!";

echo strtoupper($str)."<br>";
echo strtolower($str)."<br>";
echo ucfirst($str)."<br>";
echo ucwords($str)."<br>";
?>

和HTML标签有关的字符串格式化

nl2br();     函数在字符串中的每个新行 (\n) 之前插入 HTML 换行符 (<br />)。

htmlentities();    函数把字符转换为 HTML 实体。

htmllspeciachars();    函数把一些预定义的字符转换为 HTML 实体。

预定义的字符是:
& (和号) 成为 &
""(双引号) 成为 "
''(单引号) 成为 '
< (小于) 成为 <
> (大于) 成为 >

stripslashes();     函数删除由 addslashes() 函数添加的反斜杠。

addslashes() 函数在指定的预定义字符前添加反斜杠。

这些预定义字符是:

单引号 (')

双引号 (")

反斜杠 (\)

NULL

strip_tags();     函数剥去 HTML、XML 以及 PHP 的标签。

<form>
  input:<input type="text" name="str" size="100">
     <input type="submit" name="sub" value="提交">
     <br>
</form>


<?php
echo $_GET["str"]."<br>";
//函数把字符转换为 HTML 实体。
echo htmlentities($_GET["str"],ENT_NOQUOTES)."<br>";
//函数把一些预定义的字符转换为 HTML 实体。
echo htmlspecialchars($_GET["str"])."<br>";
//去掉由addslashes()函数加的 \
echo stripslashes($_GET["str"])."<br>";
//结合使用
echo htmlentities(stripslashes($_GET["str"]))."<br>";


// 函数剥去 HTML、XML 以及 PHP 的标签。
echo strip_tags($_GET["str"])."<br>";
?>

 number_format();    函数通过千位分组来格式化数字。

<?php
$a=1000000.12345;

echo $a."<br>";
echo number_format($a)."<br>";
//小数点保留三位,千分位用“,”隔开,小数点用“.”
echo number_format($a,3,'.',',')."<br>";
?>

strrev();   函数反转字符串

<?php
$str="Hello World!";

echo $str."<br>";
echo strrev($str)."<br>";
?>

md5();

函数计算字符串的 MD5 散列。

md5() 函数使用 RSA 数据安全,包括 MD5 报文摘译算法。

如果成功,则返回所计算的 MD5 散列,如果失败,则返回 false。

<?php
$pass="1234#!_56";

if(md5($pass)=="a8affa3d7aca3a35a39f674e1e5f0cc7")
  echo "Ok!";
?>

md5_file(); 

函数计算文件的 MD5 散列。

md5() 函数使用 RSA 数据安全,包括 MD5 报文摘译算法。

如果成功,则返回所计算的 MD5 散列,如果失败,则返回 false。

3.字符串比较函数

strcmp();   函数比较两个字符串。

0 - 如果两个字符串相等

<0 - 如果 string1 小于 string2

>0 - 如果 string1 大于 string2

strcasecmp();

strnatcmp();

<?php
$str1="abcd";
$str2="abcd";

if(strcmp($str1,$str2)==0){
  echo '$str1=$str2';
}elseif(strcmp(str1,$str2)>0){
  echo '$str1>$str2';
}else{
  echo '$str1<$str2';
}
?>

以上这篇关于PHP内置的字符串处理函数详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP 中文乱码解决办法总结分析
Jul 30 PHP
PHP执行linux系统命令的常用函数使用说明
Apr 27 PHP
PHP操作数组的一些函数整理介绍
Jul 17 PHP
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
Oct 31 PHP
ThinkPHP之N方法实例详解
Jun 20 PHP
destoon官方标签大全
Jun 20 PHP
php之readdir函数用法实例
Nov 13 PHP
php中动态变量用法实例
Jun 10 PHP
解决yii2左侧菜单子级无法高亮问题的方法
May 08 PHP
thinkPHP删除前弹出确认框的简单实现方法
May 16 PHP
对比PHP对MySQL的缓冲查询和无缓冲查询
Jul 01 PHP
php+flash+jQuery多图片上传源码分享
Jul 27 PHP
详谈PHP面向对象中常用的关键字和魔术方法
Feb 04 #PHP
浅谈PHP中的错误处理和异常处理
Feb 04 #PHP
详谈PHP中的密码安全性Password Hashing
Feb 04 #PHP
php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳)
Feb 04 #PHP
PHP水印类,支持添加图片、文字、填充颜色区域的实现
Feb 04 #PHP
Yii2下session跨域名共存的解决方案
Feb 04 #PHP
浅谈PHP的$_SERVER[SERVER_NAME]
Feb 04 #PHP
You might like
一个没有MYSQL数据库支持的简易留言本的编写
2006/10/09 PHP
zend api扩展的php对象的autoload工具
2011/04/18 PHP
php与mysql建立连接并执行SQL语句的代码
2011/07/04 PHP
php使用ffmpeg向视频中添加文字字幕的实现方法
2016/05/23 PHP
分享20多个很棒的jQuery 文件上传插件或教程
2011/09/04 Javascript
js判断变量是否未定义的代码
2020/03/28 Javascript
AngularJS基础 ng-cut 指令介绍及简单示例
2016/08/01 Javascript
JQueryEasyUI框架下的combobox的取值和绑定的方法
2017/01/22 Javascript
js通过keyCode值判断单击键盘上某个键,然后触发指定的事件方法
2017/02/19 Javascript
Angular4开发解决跨域问题详解
2017/08/28 Javascript
js 图片转base64的方式(两种)
2018/04/24 Javascript
代码分析vue中如何配置less
2018/09/28 Javascript
layer弹出层扩展主题的方法
2019/09/11 Javascript
[04:22]DOTA2大事件之护国神翼
2020/08/14 DOTA
高性能web服务器框架Tornado简单实现restful接口及开发实例
2014/07/16 Python
Python中的模块导入和读取键盘输入的方法
2015/10/16 Python
Python正则表达式分组概念与用法详解
2017/06/24 Python
Python3 XML 获取雅虎天气的实现方法
2018/02/01 Python
Python实现抓取HTML网页并以PDF文件形式保存的方法
2018/05/08 Python
分享vim python缩进等一些配置
2018/07/02 Python
情人节快乐! python绘制漂亮玫瑰
2020/08/18 Python
python 将日期戳(五位数时间)转换为标准时间
2019/07/11 Python
Python第三方包之DingDingBot钉钉机器人
2020/04/09 Python
Python必须了解的35个关键词
2020/07/16 Python
HTML5逐步分析实现拖放功能的方法
2020/09/30 HTML / CSS
联想香港官方网站及网店:Lenovo香港
2018/04/13 全球购物
自荐信怎么写呢?
2013/12/09 职场文书
母亲80寿诞答谢词
2014/01/16 职场文书
社区活动总结报告
2014/05/05 职场文书
校优秀毕业生主要事迹
2014/05/26 职场文书
市场营销策划方案
2014/06/11 职场文书
民事撤诉申请书范本
2015/05/18 职场文书
遇事可以测出您的见识与格局
2019/09/16 职场文书
CSS3 实现NES游戏机的示例代码
2021/04/21 HTML / CSS
详解非极大值抑制算法之Python实现
2021/06/28 Python
js判断两个数组相等的5种方法
2022/05/06 Javascript