函数的初步进阶与 if 函数的使用
函数的初步进阶
- 指定传参:php8 新增的传入实参时,可以指定是哪个形参的值
function add($n1, $n2 = 40, $n3)
{
return $n1 + $n2 + $n3;
}
echo add(a: 66, c: 70);
- 传入多值:函数形参中可以使用…来表示收集不确定的多值,收集来的多值会被转为数组
function add(...$args)
{
return array_sum($args);
}
echo add(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
- 作用域问题:变量定义在函数外面时是全局作用域,定义到函数里面后,就变成了函数的局部作用域,全局作用域的变量可以使用 global 关键字引入到函数中,但是函数内局部作用域的变量不能在外面使用
$a = 10;
function add()
{
global $a;
$b = 20;
return $a + $b;
}
echo add();
常用函数
- 加密函数 md5:经过 md5 加密后是不能解密的,生成的是一串固定 32 位的不可逆的散列
数组函数:
- count():获取数组长度
- array_unique():数组内容排重
- array_merge():数组内容拼接
- implode():数组内容拆为字符串
$arr = [1, 2, 3, 4, 3, 5, 2, 3, 6, 3, 5, 2];
echo count($arr);
echo "<pre>";
print_r(array_unique($arr));
print_r(array_merge($arr));
echo implode(",", $arr);
if 函数
- if 函数以 if 开头,后面跟括号,括号内是需要判断的内容,返回的值是布尔值,再后面跟大括号里面为结果为真时的值
- 如果还有假值,在大括号后面可以加一个 else,else 后面跟大括号,里面添加为假时的内容
- 如果是多条件判断,可以将 else 变成 else if 后面再跟条件进行判断输出,最后确定没有别的判断了,再把 else 应该有的值输出出来
$num = 16;
if ($num === 16) {
echo "16个";
}
// 或者如果只有一行输出,可以省略大括号
if ($num === 16) echo "16个";
//如果还有假值
if ($num === 16) {
echo "16个";
} else {
echo "你猜错了";
}
//如果真与假都只有一行,可以使用三元运算符来输出
// 条件 ?为真的值 :为假的值
echo $num === 16 ? "16个" : "你猜错了";
//多条件判断
if ($num >= 0 && $num < 16) {
echo "数量过少";
} else if ($num === 16) {
echo "16个";
} else if ($num > 16) {
echo "数量过多";
} else {
echo "数值不合法";
}