PHP小练习题

前几天在百度知道里面看到有位网友询问如何制作一下的小程序:用php语言设计一个小程序,计算今天到达下月的天数、全部输出这些天数,并使得每天的日期以三种颜色循环显示,设置三个表单,让用户选择字体颜色,然后循环输出这三种颜色反映到输出的那些日期上。今天正好有时间就给他做出来啦,这个其实并没有什么实际用处,但是新手朋友们可以当做一个PHP的小练习项目,用他来熟悉或者加深对PHP的认知!

    

PHP小练习题

 

     当时我给了他大体的思路如下:

    1,计算今天到下个月的天数,可以用两个数组一个数组存取有30天的月份,一个数组存取有31天的月份(当然还有29,28天的,这个可以自己再仔细研究,上面只是举例)!然后获取当天的月份看在哪个数组中确定当前月份的总天数,之后就可以输出当前天到月末的所有天数啦!

    2,让用户选择三种字体颜色,我觉得一个表单就行啦,用checkbox让用户选择喜欢的三种颜色!

    3,循环输出三种颜色,我觉得可以这样!

1
2
3
4
5
6
7
8
9
//$color 是存储三种颜色的数组
//$date 是存储所有天数的数组
$i  = 0;
$content  '' ;
foreach  ( $date  as  $value ) {
     $content  .=  '<span style="color:' . $color [ $i ]. '">' . $value . '</span>' ;
     $i  ++;
     if  ( $i  > 2)  $i  = 0;
}

    这样$content就包含了所有天数而且拥有颜色的样式!

 

    下面是自己编写出来的以上PHP小练习项目的具体代码,大家可以看看,不对的地方请指正哈!

    首先HTML部分代码,让用户自行选择颜色(没有规定多少种)

1
2
3
4
5
6
7
8
< form  method = "post" >
     < input  type = "checkbox"  value = "red"  name = "color[]" /> 红
     < input  type = "checkbox"  value = "black"  name = "color[]" /> 黑
     < input  type = "checkbox"  value = "blue"  name = "color[]" /> 蓝
     < input  type = "checkbox"  value = "yellow"  name = "color[]" /> 黄
     < input  type = "checkbox"  value = "green"  name = "color[]" /> 绿
     < input  type = "submit"  value = "提交"  name = "send" />
</ form >

    

    然后是PHP后台代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
if  (isset( $_POST [ 'send' ])) {
     //获取颜色
     $color  $_POST [ 'color' ];
     //计算天数
     $date  =   date ( 'Y-m-d' , time());
     $dates  explode ( '-' $date );
     $sy  array ( '1' , '3' , '5' , '7' , '8' , '10' , '12' );
     $ss  array ( '4' , '6' , '9' , '11' );
     //判断
     if  (in_array( $dates [1],  $sy )) {
         $day  = range( $dates [2], 31);
     elseif  (in_array( $dates [1],  $ss )) {
         $day  = range( $dates [2], 30);
     else  {
         if  (( $dates [0]%4 == 0 &&  $dates [0]%100 != 0) 
             || ( $dates [0]%100 == 0 &&  $dates [0]%400 == 0)) {
             $day  = range( $dates [2], 29);
         else  {
             $day  = range( $dates [2], 28);
         }
     }
     //将天数与颜色搭配
     $i  = 0;
     $content  '' ;
     foreach  ( $day  as  $value ) {
         $content  .=  '<span style="color:' . $color [ $i ]. '">' . $value . '</span> ' ;
         $i  ++;
         if  ( $i  > ( count ( $color )-1))  $i  = 0;
     }
     
     echo  $content ;

    这样$content就可以输出想要的效果啦!

想要每天及时获取王业楼的个人博客更新的内容吗?赶快添加微信公众号“ly89cn”,或者扫描下方的二维码吧!

本文来源于王业楼的个人博客,本文地址:http://www.ly89.cn/detailB/64.html

欢迎分享本文,转载请注明本文出处和地址

转载于:https://www.cnblogs.com/ly89cn/p/4968119.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值