作用域 常用函数 三元运算符及if条件
一. 作用域
1.全局变量
简单理解,就是函数外部定义的变量,只能在函数外部进行访问
2.局部变量
其实就是函数内部定义的变量,只能在函数内部使用
3.超全局变量
系统定义的变量,包括的全部变量,任何地方都能访问
二. 常用的函数
加密函数
md5
string md5 ( string str[,boolraw_output = false ] )
1.md5()默认情况下以 32 字符十六进制数字形式返回散列值,它接受两个参数,第一个为要加密的字符串,第二个为 raw_output 的布尔值,默认为 false,如果设置为 true,md5()则会返回原始的 16 位二进制格式报文摘要。
2.md5()为单向加密,没有逆向解密算法,但是还是可以对一些常见的字符串通过收集,枚举,碰撞等方法破解。
Crypt
string crypt ( string str[,stringsalt ] )
1.crypt()接受两个参数,第一个为需要加密的字符串,第二个为盐值(就是加密干扰值,如果没有提供,则默认由 PHP 自动生成【盐值只能取两位】);返回散列后的字符串或一个少于 13 字符的字符串,后者为了区别盐值。
2.crypt()为单向加密,跟 md5 一样。
sha1
string sha1 ( string str[,boolraw_output = false ]
1.跟 md5 很像,不同的是 sha1()默认情况下返回 40 个字符的散列值,传入参数性质一样,第一个为加密的字符串,第二个为 raw_output 的布尔值,默认为 false,如果设置为 true,sha1()则会返回原始的 20 位原始格式报文摘要
2.sha1()也是单向加密,没有逆向解密算法
hash
string hash($ago,$data);
1.$ago是可以指定加密使用的哈希算法,例如:”md5”,”sha256”,”haval160,4” 等。$data 是要加密的数据
2.hash 加密也是不可逆的,因为是给定一个不确定的字符串返回特定长度的字符串,这个本质意义上来说实现了单项散列加密。
数组函数
函数里可以使用函数
自定义函数里,也可以使用系统函数和自定义函数
1.count()函数
计算数组中的单元数目或对象中的属性个数
2.array_unique()函数
移除数组中的重复的值,并返回结果数组。当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除。
3.array_merge()函数
把一个或多个数组合并为一个数组
如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素
$arr1 = [1,3,5,7,9];
$arr2 = [2,4,6,8,10];
$arr3 = ['a','B','c','D'];
print_r( array_merge($arr1,$arr2,$arr3) );
下标如果不写,该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引
4.implode()函数
把数组转换为字符串
$arr = ['qwer','tyui','op','asdf','ghjk'];
echo implode('-',$arr);
//返回qwer-tyui-op-asdf-ghjk
5.explode()函数
把字符串分割为数组,但是要有分割符号(标识)
$str = 'qwer-tyui-op-asdf-ghjk';
print_r(explode('-',$str));
三.三元运算符
三元运算符语法:条件 ? 结果1 : 结果2
如果满足条件时结果 1,不满足时为结果 2
$point = 60;
echo $point >= 60 ? '及格' : '不及格';//输出及格
如果条件参数有值,则执行:
前面的语句,无值则执行:
后的语句,无值的情况包括'' 0 null false
$x = 0;
echo $x ? '有值' : '无值';//输出无值
四.if 关键词
if (条件1){
if 条件1成立时执行的代码;
}elseif (条件2){
elseif 条件2成立时执行的代码;
}else{
条件不成立时执行的代码;
}
$point = 99;
if(!is_numeric($point)){
echo '请输入数字';
}else if($point >= 0 and $point < 60){
echo '不及格';
}else if($point >=60 and $point <70){
echo '及格';
}else if($point >= 70 and $point < 80){
echo '良好';
}else if($point >= 80 and $point < 90){
echo '优秀';
}else if($point >= 90 and $point < 100){
echo '非常优秀';
}else if($point == 100){
echo '满分';
}else{
echo '请输入正确的分数范围';
}
//输出非常优秀
上一篇: python源程序执行的方式有哪几种
下一篇: 总结一些PHP中有用的知识和坑【推荐】