Correcting teacher:PHPz
Correction status:qualified
Teacher's comments:
<?php
function demo($price,$num){
//商品总价 = 单价 * 数量
$total = $price * $num;
//当商品总价大于等于3000并且小于5000时,打9折
if($total >= 3000 && $total <5000)
{
$pay = $total * 0.9;
//当商品总价大于等于5000并且小于10000时,打8折
}elseif($total >=5000 && $total <10000)
{
$pay = $total * 0.8;
//当商品总价大于等于10000时,打七折
}elseif($total >= 10000){
$pay = $total * 0.7;
}else{
//默认不打折
$pay = $total;
}
//返回实付金额
return $pay;
}
echo '您的实付金额为:'.demo(888,5);
function demo2($price ,$num){
$total = $price * $num;
return $total > 3000 ? '您的消费金额超过3000元,享受会员8折,实付金额:'.$pay = $total * 0.8 .'元!'
: '您的消费总价未满3000元,没有折扣享受,实付:'.$pay = $total.'元!';
}
echo demo2(1999,2);
//自行练习5个数组函数
//1:
//array_filter,数组过滤函数,返回数组中达到条件的值
$arr = [12,35,77,150,188,203];
$res = array_filter($arr,function($value){return $value >100;});
print_r($res);
//2.
//array_keys(),返回包含数组中所有键名的一个新数组。
$arr1 = ['name'=>'嬴政','position'=>'大秦帝国国君','nickname'=>'屎皇帝'];
$res1 = array_keys($arr1);
print_r($res1);
echo '<br>';
//第二个参数为可选参数,返回指定值的键,即使返回一个值,也是数组,用print_r打印
$res2 = array_keys($arr1,'大秦帝国国君');
print_r($res2);
//3.
//array_map(),将数组中的每个值,用函数处理,返回新数组
function demo3($value){
if($value >100)
{
$value -= 50;
}
return $value;
}
$arr2 = [20,80,120,180,200,230];
//第一个参数是自定义函数名,加上引号
$res = array_map('demo3',$arr2);
print_r($res);
//返回结果,数组中大于100的值,将被减去50
//Array ( [0] => 20 [1] => 80 [2] => 70 [3] => 130 [4] => 150 [5] => 180 )
//4.
//array_rand(),随机返回数组中的一个键名;
$arr3 = ['tang'=>'李世民','song'=>'朱元璋','sui'=>'杨坚','qin'=>'嬴政'];
$key = array_rand($arr3);
echo $key.'<br>';
//设置第二个参数,返回多个键名,
$keys= array_rand($arr3,3);
print_r($keys);
//5.
//array_values(),返回数组中所有的值,
$arr3 = ['tang'=>'李世民','song'=>'朱元璋','sui'=>'杨坚','qin'=>'嬴政'];
$values = array_values($arr3);
print_r($values);