1.define和defined
define常用来定义一个全局常量,常量一经定义就无法再被修改。
格式:
define(name,value,case_insensitive)
参数 | 描述 |
---|---|
name | 必需。规定常量的名称。 |
value | 必需。规定常量的值。 |
case_insensitive | 可选。规定常量的名称是否对大小写敏感。 若设置为 true,则对大小写不敏感。默认是 false(大小写敏感)。 |
defined常用来判断常量有没有被定义,如果常量存在则返回true,如果常量不存在则返回false。
格式:类似于is_null,isset等, if(defined()){ echo "true";}
2.array_unique()
作用:移除数组中重复的值。常用来查询数据库中不想重复的数值。具体的参考w3school
3.empty()
作用:判断是否为空,若为空则返回true,不为空则返回false
4.is_numeric
作用:判断对象是否是数字。返回布尔值。
is_numeric函数不只支持10进制的数字,也支持16进制类型数字。所以在使用中验证纯自然数字如QQ号码这样的数字串,要配合 intval()整型化函数。is_numeric能判定一个变量是否为数字或数字字符串,但是它的判定范围太宽了。整数、小数、指数表示以及16进制数值都会通过判断。 平时判定id的时候,用它就有点不合适。今天发现一个新的判定函数:ctype_digit,它可以只判定整数,这样就比is_numeric好一些。其他还有ctype_xdigit判定16进制整数,ctype_alpha判定字母等等函数。
5.password_hash
password_hash() – 对密码加密.
password_verify() – 验证已经加密的密码,检验其hash字串是否一致.
password_needs_rehash() – 给密码重新加密.
password_get_info() – 返回加密算法的名称和一些相关信息.
以上是php5.5之后新推出的加密方式。MD5的加密方式过于简单,已经不太适合现在的社会形势了。
例子:$pwd = "123456";
$hash = password_hash($pwd, PASSWORD_DEFAULT);