实验报告三
课程名称:网站系统开发(基于PHP)
成绩:
实验项目名称:函数与数组实验时间:2014-11-27
指导教师(签名):
班级:121 姓名:姜英俊学号:201210701116
实验目的:
1.掌握PHP自定义函数。
2.掌握函数回调。
3.掌握PHP数组的创建与输出。
4.掌握PHP数组元素的赋值及相关函数的应用。
实验环境:
WAMP(Windows下具有的Apache、MySQL和PHP环境),或者LAMP(Linux下具有的Apache、MySQL 和PHP环境)
实验内容及过程:
1、自定义一个递归函数编写反序逐位输出一个整数的程序。
【注意:】不能利用strrev($s)输出反序。
2、参考课件的4.6.2 使用变量函数声明和应用的回调函数,写一个程序可以过滤0-30以内的质数和偶数。
3、自定义的两个数组,分别为索引数组和关联数组,每个数组必须至少有4个元素,使用print_r( )函数输出数组元素。
4、编写一个随机抽奖程序,示例运行结果如下:
5、定义一个三维数组$categories,用于存放Car,Van和Truck的产品信息,并使用foreach循环完成数组的遍历,显示结果如下。
实验结果及分析:
error_reporting(0);
$num=5531099;
function_name($num);
function function_name($num) { if(!$num==0)
{$a=$num%10;
echo $a." ";
$b=$num/10;
function_name((int)$b);
}
Break;
}
error_reporting(0);
function filter($fun){
for($j=0;$j<=30;$j++){
if($fun($j))
continue;
echo $j." ";
}
}
function one($num){
return $num%2!=0&&$num%3!=0&$num!=1||$num==2||$num==3; }
function two($num){
return $num%2==0;
}
echo "30以内的非质数有:";
filter("one");
echo '
';
echo "30以内的非偶数有:";
filter("two");
3.代码段:
error_reporting(0);
//索引数组
$products= array('Tires','Oil','Speak Piugs','Zoo'); print_r($products);
echo '
';
//关联数组
$sports = array(
'football' => 'good',
'swimming' => 'very well',
'running' => 'not good',
'basketball'=>'very good'
);
print_r($sports);
?>
4.代码段:
error_reporting(0);
echo "本次抽奖奖项";
echo '
';
$item= array('0'=>'2元',
'1'=>'100元',
'2'=>'500元',
'3'=>'1800元',
'4'=>'5888元',
'5'=>'18888元',
'6'=>'58888元',
'7'=>'188888元',
'8'=>'588888元',
'9'=>'2888888元');
echo '
'.print_r($item,true).''; $key=mt_rand(0,9);
echo "恭喜您!抽到:".$item[$key];
5.代码段:
error_reporting(0);
$categories=array(array(array('CAR_TIR','Tires','100'),
array('CAR_OIL','Oil','10'),
array('CAR_SPK','Spark Plugs','4')
),
array(array('VAN_TIR','Tires','120'),
array('VAN_OIL','Oil','12'),
array('VAN_SPK','Spark Plugs','4')
),
array(array('TRK_TIR','Tires','150'),
array('TRK_OIL','Oil','15'),
array('TRK_SPK','Spark Plugs','6')
)
);
$i=0;
foreach ($categories as $a){
$i++;
echo '
'.'
'.'Code'.' | '.'.'Description'.' | '.'.'Price'.' | '.'
---|---|---|
'.$value.' | ';