你应该这个姿势学习PHP(1)

  1、addslashes

  addslasehes($string) 对字符串进行编译转义

  应用场景:能防止sql的注入(当然并不完全是可以,我们可以使用pdo进行预处理然后方式sql的注入,安全不能只靠一种方式防止事情的发生)

  2、echo ,print,printf,number_format

  1)echo是语言结构体,不是函数,没有返回值,能输出多个值

  for example:echo $a,$b

  应用场景:输出一些字符串

  2)print是一个函数,它只有一个参数,有返回值,不能输出对象和数组

  应用场景:输出一些参数值

  3)print_r()是一个函数,有返回值,能输出对象和数组

  应用场景:打印一些数组或者对象

  4)var_dump是一个函数,有返回值

  应用场景:能够返回数据的类型,打印一切值

  5)printf()是一个函数,有返回值,格式化输出

  应用场景:微信的api接口的参数拼接

  for example:

  $str = 'string';$num=1;

  sprintf("$s is string,$u is int",$str,$num);

  还能格式化浮点数,是ceil原则,四舍五入

  sprintf('%.2f',23.453) 23.45

  6)number_format(num,int=要保留的小数位,如果不写将四舍五入) 将数字转换成货币格式

  3、trim,rtrim,ltrim

  字符串的去除空格以及指定的字符

  trim($string,'str') 去除整个字符串的指定的字符,如果不填则是默认去掉空格等

  ltrim()同上去除左边,rtrim()同上去除右边

  应用场景:去掉用户在设置密码的时候的左右多余的空格

  4、implode,join

  将数组转换成字符串

  应用场景:比如你有一个用户的信息要在前端展示,然后后端返回的是一个数组,那么就可以使用implode(',',$arr)

  5、explode,str_split

  将字符串拆分成一个数组

  应用场景:比如前端传给后端一个1,simengphp 你想或者simengphp这个字符串,那么你就可以使用

  explode(',',$arr)[1]

  6、substr,strstr,strrchr

  1)substr字符串的截取函数

  应用场景:我要获取字符串的前几位

  substr($str,0,n) 缺点,如果是中文字符会导致截取乱码

  mb_substr($str,0,n,'编码') 这个可以指定字符编码进行截取

  2)strstr 某个字符出现的位置并返回这个字符在字符串里面的后半部分值

  strstr($str,'.')

  3)strrchr()

  应用场景:$str = 'uploads/a.b.php';echo strrchr($str,'.'); //输出.php 这个是一个经典的面试题

  7、str_replace,str_ireplace, substr_replace

  1)str_replace(search,res,$str) 替换某个为你所想要的

  应用场景:替换到用户传过来单词的某个值

  2)substr_replace($str,res,0,n)

  应用场景:隐藏手机号的中间几位数

  $str = '18522713541';

  echo substr_replace($str,'***',3,3); //185***13541

  8、strlen,strpos,stripos,strrpos,strripos

  1)strlen获取字符串的长度

  应用场景:配合substr计算用户的长度截取字符串

  2)strpos某个字符出第一次现在字符串的第几位并返回位数(区分大小写)

  应用场景:返给前端一个全路径时候,判断是否包含http,如果包含则不拼接,不包含则拼接

  stripos同上不区分大小写

  3)strrpos返回某个字符最后一次出现在字符串的位置

  strripos同上不缺分大小写

  9、nl2br,htmlspecialchars(),htmlspecialchars_decode(),strip_tag()

  1)nl2br将n转换成br

  2)htmlspecialchars()将一些特殊字符转成html实体

  应用场景:一般富文本编辑器传过来的都是特殊字符,那么你存数据库直接转换成html存进去

  3)strip_tags($str,[allows_tags]) 去掉html代码,allows_tags是允许存在哪些标签

  应用场景:过滤掉一些html代码然后截取展示到简介地方

  10、lcfirst,ucfirst,ucworlds,strtolower,strtoupper

  1)lcfirst() 将一个字符的第一个字母小写

  2)ucfirst()将字符的第一个字符大写

  3)unworlds()将字符串中的每个单词的首字母转换成大写

  4)strtolower()将全部字符转成小写

  5)strtoupper()将全部字符转成大写

  12、str_repeat,str_pad

  1)str_repeat(x,num) 重复一个字符多少次

  应用场景:我们新闻门户简介展示不开,需要使用...代替,那么我们可以使用这个重复,然后展示

  2)str_pad($str,‘x’,10) 填充指定字符将字符串到指定长度

  应用场景:比如我们有一个需求是将一些字段统一为一样长度的字符串,然后传输到后台处理,可以使用这个

  13、sha1,md5,hex2bin,bin2hex

  1)sha1和md5 加密函数

  2)hex2bin 将一个字符以16进制转成2二进制,bin2hex正好相反

  应用场景:以上都是传输参数进行加密以及验签常用的加密函数,包含单向和双向加解密

  14、pase_str,pase_url,pathinfo,http_build_query

  1)pase_str($str,$out) 将字符串转换成数组 $out[xx]

  应用场景:路由解析获取参数名和参数值

  2)pase_url($url) 解析一个url,返回头信息,主机域名等等信息

  应用场景:获取当前url的主机名以及域名等

  3)pathinfo()返回文件的路径信息

  应用场景:获取文件的扩展名pathinfo()[extension]

  4)http_build_query($arr,[以某个字符链接])

  应用场景:将一个数组转换成一个url参数格式的字符

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PHP实战技术

你应该这个姿势学习PHP(1)

1、addslashes addslasehes($string) 对字符串进行编译转义 应用场景:能防止sql的注入(当然并不完全是可以,我们可以使用pdo...

42610
来自专栏CRPER折腾记

ES6折腾记- 模板字符串

总体来说,模板字符串的出现了,让我们的字符串拼接写的更加优美了;相当简易实用;但是这货并不是万能的,有部分unicode编码字符会造成编译报错

1103
来自专栏向治洪

Promise机制详解

Javascript 采用回调函数(callback)来处理异步编程。从同步编程到异步回调编程有一个适应的过程,但是如果出现多层回调嵌套,也就是我们常说的厄运的...

3467
来自专栏思考的代码世界

Python编程从入门到实践之安装和数据类型|第0天

变量名=赋值的值,例如change是变量名,Hello SenLin Chen!是赋值的值。这样变量change的值就是:Hello SenLin Chen!;

51514
来自专栏Pulsar-V

GTK基础操作类

1 类型定义 整数类型:gint8、guint8、gint16、guint16、gint31、guint32、gint64、guint64。不是所有的平台都提...

2745
来自专栏前端知识分享

第193天:js---Math+Error+Number+Object总结

762
来自专栏C/C++基础

C++命名方式建议

一个大型项目,参与开发人员众多,每个人的编码风格迥异,为保持代码风格统一,提高代码可读性与可维护性,一个重要的约定就是命名方式。良好统一的命名方式能让我们在不需...

704
来自专栏向治洪

Promise机制

Javascript 采用回调函数(callback)来处理异步编程。从同步编程到异步回调编程有一个适应的过程,但是如果出现多层回调嵌套,也就是我们常说的厄运的...

22310
来自专栏python学习路

数据结构与算法(一)

算法的概念 算法是计算机处理信息的本质,因为计算机程序本质上是一个算法来告诉计算机确切的步骤来执行一个指定的任务。一般地,当算法在处理信息时,会从输入设备或数据...

4375
来自专栏决胜机器学习

PHP面向对象核心(一)——序列化与魔术方法

PHP面向对象核心(一) (原创内容,转载请注明来源,谢谢) 一、对象存储——serialize与unserialize 对象是存储类的属性的键值对,类似于数...

41710

扫码关注云+社区

领取腾讯云代金券