关于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 相关文章推荐
从康盛产品(discuz)提取出来的模板类
Jun 28 PHP
php在项目中寻找代码的坏味道(综艺命名)
Jul 19 PHP
九个你必须知道而且又很好用的php函数和特点
Aug 08 PHP
CI框架学习笔记(一) - 环境安装、基本术语和框架流程
Oct 26 PHP
使用纯php代码实现页面伪静态的方法
Jul 25 PHP
php生成带logo二维码方法小结
Apr 08 PHP
全面了解PHP中的全局变量
Jun 17 PHP
浅谈php处理后端&amp;接口访问超时的解决方法
Oct 29 PHP
php判断是否连接上网络的方法实例详解
Dec 14 PHP
php 后端实现JWT认证方法示例
Sep 04 PHP
PHP 7.4中使用预加载的方法详解
Jul 08 PHP
Yii框架组件的事件机制原理与用法分析
Apr 07 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
php下使用iconv需要注意的问题
2010/11/20 PHP
解析PHP获取当前网址及域名的实现代码
2013/06/23 PHP
用php简单实现加减乘除计算器
2014/01/06 PHP
linux使用crontab实现PHP执行计划定时任务
2014/05/10 PHP
PHP中让json_encode不自动转义斜杠“/”的方法
2017/02/28 PHP
关于JavaScript的一些看法
2009/05/27 Javascript
JQuery从头学起第三讲
2010/07/06 Javascript
JavaScript实现的石头剪刀布游戏源码分享
2014/08/22 Javascript
javascript实现全角与半角字符的转换
2015/01/07 Javascript
跨域资源共享 CORS 详解
2016/04/26 Javascript
JS集成fckeditor及判断内容是否为空的方法
2016/05/27 Javascript
AngularJS基础 ng-keypress 指令简单示例
2016/08/02 Javascript
nodejs实现邮件发送服务实例分享
2017/03/29 NodeJs
JavaScript数据结构之二叉树的查找算法示例
2017/04/13 Javascript
Node+Express+MongoDB实现登录注册功能实例
2017/04/23 Javascript
利用JQUERY实现多个AJAX请求等待的实例
2017/12/14 jQuery
详解JavaScript 新语法之Class 的私有属性与私有方法
2019/04/23 Javascript
微信小程序webview组件交互,内联h5页面并网页实现微信支付实现解析
2019/08/16 Javascript
[13:25]VP vs VICI (BO3)
2018/06/07 DOTA
用Python解析XML的几种常见方法的介绍
2015/04/09 Python
详解使用pymysql在python中对mysql的增删改查操作(综合)
2017/01/18 Python
python中通过预先编译正则表达式提高效率
2017/09/25 Python
Python简单实现socket信息发送与监听功能示例
2018/01/03 Python
python实现播放音频和录音功能示例代码
2018/12/30 Python
使用apiDoc实现python接口文档编写
2019/11/19 Python
Python打包模块wheel的使用方法与将python包发布到PyPI的方法详解
2020/02/12 Python
html5/css3响应式页面开发总结
2018/10/16 HTML / CSS
人力资源管理专业学生自我评价
2013/11/20 职场文书
项目采购员岗位职责
2014/04/15 职场文书
医院信息公开实施方案
2014/05/09 职场文书
运动会加油稿100字
2014/09/19 职场文书
工人先进事迹材料
2014/12/26 职场文书
小学科学教学计划
2015/01/21 职场文书
2015年入党积极分子评语
2015/03/26 职场文书
2016秋季运动会前导词
2015/11/25 职场文书
SpringCloud Function SpEL注入漏洞分析及环境搭建
2022/04/08 Java/Android