PHP功能实现小练习题

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

复制代码
 其时我给了他大体的思路如下:
1,计算今天到下个月的天数,能够用两个数组一个数组存取有30天的月份,一个数组存取有31天的月份(当然还有29,28天的,这个能够自己再细心研讨,上面只是举例)!然后获取当天的月份看在哪个数组中确定当前月份的总天数,之后就能够输出当前天到月末的所有天数啦!
2,让用户挑选三种字体色彩,我觉得一个表单就行啦,用checkbox让用户挑选喜欢的三种色彩!

//$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部分代码,让用户自行选择颜色(没有规定多少种)

<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后台代码

复制代码
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就可以输出想要的效果

相关推荐
BingoGo2 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack2 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
BingoGo3 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack3 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
JaguarJack4 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
后端·php·服务端
BingoGo4 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
php
JaguarJack5 天前
告别 Laravel 缓慢的 Blade!Livewire Blaze 来了,为你的 Laravel 性能提速
后端·php·laravel
郑州光合科技余经理5 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
QQ5110082855 天前
python+springboot+django/flask的校园资料分享系统
spring boot·python·django·flask·node.js·php
WeiXin_DZbishe5 天前
基于django在线音乐数据采集的设计与实现-计算机毕设 附源码 22647
javascript·spring boot·mysql·django·node.js·php·html5