作者:小志19841126_466 | 来源:互联网 | 2023-10-17 16:17
PHP小习题:PHP小练习题前几天在百度知道里面看到有位网友询问如何制作一下的小程序:用php语言设计一个小程序,计算今天到达下月的天数、全部输出这些天数,并使得每天的日期以三种颜
PHP小练习题
前几天在百度知道里面看到有位网友询问如何制作一下的小程序:用php语言设计一个小程序,计算今天到达下月的天数、全部输出这些天数,并使得每天的日期以三种颜色循环显示,设置三个表单,让用户选择字体颜色,然后循环输出这三种颜色反映到输出的那些日期上。今天正好有时间就给他做出来啦,这个其实并没有什么实际用处,但是新手朋友们可以当做一个PHP的小练习项目,用他来熟悉或者加深对PHP的认知!
当时我给了他大体的思路如下:
1,计算今天到下个月的天数,可以用两个数组一个数组存取有30天的月份,一个数组存取有31天的月份(当然还有29,28天的,这个可以自己再仔细研究,上面只是举例)!然后获取当天的月份看在哪个数组中确定当前月份的总天数,之后就可以输出当前天到月末的所有天数啦!
2,让用户选择三种字体颜色,我觉得一个表单就行啦,用checkbox让用户选择喜欢的三种颜色!
3,循环输出三种颜色,我觉得可以这样!
123456789 | $i = 0; $content = '' ; foreach ( $date as $value ) { $content .= '. $color [ $i ]. '">' . $value . ' ' ; $i ++; if ( $i > 2) $i = 0; } |
这样$content就包含了所有天数而且拥有颜色的样式!
下面是自己编写出来的以上PHP小练习项目的具体代码,大家可以看看,不对的地方请指正哈!
首先HTML部分代码,让用户自行选择颜色(没有规定多少种)
12345678 | < 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后台代码
12345678910111213141516171819202122232425262728293031 | 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 .= '. $color [ $i ]. '">' . $value . ' ' ; $i ++; if ( $i > ( count ( $color )-1)) $i = 0; } echo $content ; |
这样$content就可以输出想要的效果啦!
想要每天及时获取王业楼的个人博客更新的内容吗?赶快添加微信公众号“ly89cn”,或者扫描下方的二维码吧!
本文来源于王业楼的个人博客,
欢迎分享本文,转载请注明本文出处和地址