html - php如何在二维数组中,再计算单列的最值。

php中文网
发布: 2016-06-06 20:24:43
原创
1644人浏览过

在做一个统计网页,现在遇到这样一个问题。
如标题:怎么在二维数组中,找到每个单列的最值。

如图,我需要找到需要的单列的最值,然后应用相应的样式。

现在的显示效果
html - php如何在二维数组中,再计算单列的最值。

需要实现的显示效果
html - php如何在二维数组中,再计算单列的最值。

相应的颜色css类我已经写好了,只需要引用就行了。
不用js代码,也就是说直接在生成的时候直接判断,再引用样式。

立即学习PHP免费学习笔记(深入)”;

部分代码如下:

    $index=1;
    while($row = mysql_fetch_array($result)){
        echo '<tr>';
        echo    '<td class="center essential">'.$index.'</td>';
        echo    '<td class="essential"><a class= "user" href=search.php?qq='.$row[qq].'&user='.$row[user].'>'.$row[user].'</a></td>';
        echo    '<td class="essential">'.$row[speed].'</td>';
        echo    '<td class="essential">'.$row[keystroke].'</td>';
        echo    '<td class="essential">'.$row[length].'</td>';
        echo    '<td class="essential">'.$row[backspace].'</td>';
        echo    '<td>'.$row[wrong].'</td>';
        echo    '<td class="center">'.$row[ime].'</td>';
        echo    '<td class="center">'.$row[wordcount].'</td>';
        echo    '<td class="center">'.$row[timecost].'</td>';
        echo    '<td>'.$row[qq].'</td>';
        echo    '<td class="center">'.date("H:i",strtotime($row[timestart])).'</td>';
        echo    '<td class="center">'.$row[repeat].'</td>';
        echo    '<td>'.$row[score].'</td>';
        echo    '<td>'.$row[scoresum].'</td>';
        echo '</tr>';
        $index++;
      /************************************************
        其中的essential和center没什么其它作用,可以忽略。
       ************************************************/
    }
登录后复制
登录后复制

切成数组什么的好说,我只是不知道存入数组后如何才能进行判断。
求大神说的细点,小白在此谢过。

回复内容:

在做一个统计网页,现在遇到这样一个问题。
如标题:怎么在二维数组中,找到每个单列的最值。

如图,我需要找到需要的单列的最值,然后应用相应的样式。

现在的显示效果
html - php如何在二维数组中,再计算单列的最值。

需要实现的显示效果
html - php如何在二维数组中,再计算单列的最值。

相应的颜色css类我已经写好了,只需要引用就行了。
不用js代码,也就是说直接在生成的时候直接判断,再引用样式。

立即学习PHP免费学习笔记(深入)”;

部分代码如下:

    $index=1;
    while($row = mysql_fetch_array($result)){
        echo '<tr>';
        echo    '<td class="center essential">'.$index.'</td>';
        echo    '<td class="essential"><a class= "user" href=search.php?qq='.$row[qq].'&user='.$row[user].'>'.$row[user].'</a></td>';
        echo    '<td class="essential">'.$row[speed].'</td>';
        echo    '<td class="essential">'.$row[keystroke].'</td>';
        echo    '<td class="essential">'.$row[length].'</td>';
        echo    '<td class="essential">'.$row[backspace].'</td>';
        echo    '<td>'.$row[wrong].'</td>';
        echo    '<td class="center">'.$row[ime].'</td>';
        echo    '<td class="center">'.$row[wordcount].'</td>';
        echo    '<td class="center">'.$row[timecost].'</td>';
        echo    '<td>'.$row[qq].'</td>';
        echo    '<td class="center">'.date("H:i",strtotime($row[timestart])).'</td>';
        echo    '<td class="center">'.$row[repeat].'</td>';
        echo    '<td>'.$row[score].'</td>';
        echo    '<td>'.$row[scoresum].'</td>';
        echo '</tr>';
        $index++;
      /************************************************
        其中的essential和center没什么其它作用,可以忽略。
       ************************************************/
    }
登录后复制
登录后复制

切成数组什么的好说,我只是不知道存入数组后如何才能进行判断。
求大神说的细点,小白在此谢过。

知道怎么弄了, 先从数据库把每列的数据先读取出来,然后用max(),min()计算每列的最值
然后,在输出的时候,当前列的数据是否等于这一列的最值,等于的话就给予特殊样式。
其中需要注意的一项是:mysql_fetch_array只能取一次数据,取完一次之后里面就没有数据了。所以先把查询到的数据转存。

部分代码如下:

    //转存查询的结果
    $temp_result = array();
    while($row=mysql_fetch_array($result)){
        array_push($temp_result, $row);
    }
    //获取每个列的所有数据,算出最值;
    $speed = array();    $keystroke = array();    $length = array();    $backspace = array(); $repeat = array();
    foreach ($temp_result as $row ) {
        array_push($speed, $row[speed]);
        array_push($keystroke, $row[keystroke]);
        array_push($length, $row[length]);
        array_push($backspace, $row[backspace]);
        array_push($repeat, $row[repeat]);
    }
    $max_speed=max($speed);
    $max_keystroke=max($keystroke);
    $min_length = min($length);
    $min_backspace = min($backspace);
    $max_repeat = max($repeat);

    // 输出列表
    $index=1;
    foreach ($temp_result as $row ) {
        echo '<tr>';
        echo    '<td class="center essential">'.$index.'</td>';
        echo    '<td class="essential"><a class= "user" href=search.php?qq='.$row[qq].'&user='.$row[user].'>'.$row[user].'</a></td>';
        if($row[speed]==$max_speed){
            echo    '<td class="essential bg-yellow">'.$row[speed].'</td>';
        }else{
            echo    '<td class="essential">'.$row[speed].'</td>';
        }
        if($row[keystroke]==$max_keystroke){
            echo    '<td class="essential bg-green">'.$row[keystroke].'</td>';
        }else{
            echo    '<td class="essential">'.$row[keystroke].'</td>';
        }
        if($row[length]==$min_length){
            echo    '<td class="essential bg-red">'.$row[length].'</td>';
        }else{
            echo    '<td class="essential">'.$row[length].'</td>';
        }
        if($row[backspace]==$min_backspace){
            echo    '<td class="essential bg-blue">'.$row[backspace].'</td>';
        }else{
            echo    '<td class="essential">'.$row[backspace].'</td>';
        }
        echo    '<td>'.$row[wrong].'</td>';
        echo    '<td class="center">'.$row[wordcount].'</td>';
        echo    '<td class="center">'.$row[timecost].'</td>';
        echo    '<td class="center">'.date("m-d H:i",strtotime($row[timestart])).'</td>';
        if($row[repeat]==$max_repeat){
            echo    '<td class="center bg-green">'.$row[repeat].'</td>';
        }else{
            echo    '<td class="center">'.$row[repeat].'</td>';
        }
        echo    '<td>'.$row[score].'</td>';
        echo    '<td>'.$row[scoresum].'</td>';
        echo '</tr>';
        $index++;
    }
登录后复制

最终的显示效果
html - php如何在二维数组中,再计算单列的最值。

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号