你应该这个姿势学习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); //18513541
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参数格式的字符

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
JAVA之旅(二)——if,switch,for,while,do while,语句嵌套,流程控制break , continue ,函数,...
JAVA之旅(二)——if,switch,for,while,do while,语句嵌套,流程控制break , continue ,函数,重载的示例总结 JAVA的思想真的很重要,所以要专心的学——献给刚入门的小程序员们 一.语句 一般语句也就三个类型 判断语句 if 选择语句 switch 循环语句 for 当然,还有其他的 我们这里一个一个来讲 1.if if,如果,就是判断,if(条件){} //公共的 类 类名 public class HelloJJAVA { // 公共的 静态 无返回值 main方法 数组 public static void main(String[] str) { int a = 5; if (a > 10) { System.out.println("我比10大"); } else { System.out.println("我比10小"); } } } 输出的结果 这里我们来写一个经典的在题目 //公共的 类 类名 public class HelloJJAVA { // 公共的 静态 无返回值 main方法 数组 public stati...
-
下一篇
android与js的交互之jsbridge使用
众所周知,app的一些功能可能会使用到H5开发,这就难免会遇到java与js 的相互调用,android 利用WebViewJavascriptBridge 实现js和java的交互,这里介绍下JsBridge第三方库的使用。 github传送门:https://github.com/lzyzsd/JsBridge 简单分析 java与js相互调用如下: java发送数据给js,js接收并回传给java 同理,js发送数据给java,java接收并回传给js 同时两套流程都存在「默认接收」 与 「指定接收」 大致调用流程图如下: image image 依赖 项目build.gradle repositories { // ... maven { url "https://jitpack.io" } } app build.gradle dependencies { compile 'com.github.lzyzsd:jsbridge:1.0.4' } xml里直接使用com.github.lzyzsd.jsbridge.BridgeWebView替代原生WebView 另外放置两个...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- MySQL数据库在高并发下的优化方案
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Dcoker安装(在线仓库),最新的服务器搭配容器使用
- Docker容器配置,解决镜像无法拉取问题
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Docker快速安装Oracle11G,搭建oracle11g学习环境