検索
ホームページバックエンド開発PHPチュートリアルhtml - php如何在二维数组中,再计算单列的最值。

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

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

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

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

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

部分代码如下:

<code>    $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='.%24row%5Bqq%5D.'&user='.%24row%5Buser%5D.'">'.$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没什么其它作用,可以忽略。
       ************************************************/
    }</code>

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

回复内容:

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

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

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

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

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

部分代码如下:

<code>    $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='.%24row%5Bqq%5D.'&user='.%24row%5Buser%5D.'">'.$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没什么其它作用,可以忽略。
       ************************************************/
    }</code>

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

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

部分代码如下:

<code>    //转存查询的结果
    $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='.%24row%5Bqq%5D.'&user='.%24row%5Buser%5D.'">'.$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++;
    }</code>

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

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
PHPでインターフェイスをどのように作成して使用しますか?PHPでインターフェイスをどのように作成して使用しますか?Apr 30, 2025 pm 03:40 PM

この記事では、PHPでインターフェイスを作成、実装、および使用する方法について説明し、コード組織と保守性の利点に焦点を当てています。

crypt()とpassword_hash()の違いは何ですか?crypt()とpassword_hash()の違いは何ですか?Apr 30, 2025 pm 03:39 PM

この記事では、PHPのCrypt()とpassword_hash()の違いについて、パスワードハッシュの違いについて説明し、最新のWebアプリケーションの実装、セキュリティ、および適合性に焦点を当てています。

PHPのクロスサイトスクリプト(XSS)をどのように防ぐことができますか?PHPのクロスサイトスクリプト(XSS)をどのように防ぐことができますか?Apr 30, 2025 pm 03:38 PM

記事では、入力検証、出力エンコード、およびOWASP ESAPIやHTML浄化器などのツールを使用して、PHPのクロスサイトスクリプト(XSS)を防止します。

PHPの自動装置は何ですか?PHPの自動装置は何ですか?Apr 30, 2025 pm 03:37 PM

PHPでのオートローディングは、必要に応じてクラスファイルを自動的にロードし、メモリの使用を削減し、コード組織を強化することでパフォーマンスを向上させます。ベストプラクティスには、PSR-4の使用とコードを効果的に整理することが含まれます。

PHPストリームとは何ですか?PHPストリームとは何ですか?Apr 30, 2025 pm 03:36 PM

PHPストリームは、一貫したAPIを介したファイル、ネットワークソケット、圧縮形式などのリソースの処理を統合し、複雑さを抽象化し、コードの柔軟性と効率を高めます。

PHPを使用してアップロードできるファイルの最大サイズはどれくらいですか?PHPを使用してアップロードできるファイルの最大サイズはどれくらいですか?Apr 30, 2025 pm 03:35 PM

この記事では、PHPでファイルアップロードサイズの管理を管理し、2MBのデフォルト制限とPHP.ini設定を変更してそれを増やす方法に焦点を当てています。

PHPのめまいの種類とは何ですか?PHPのめまいの種類とは何ですか?Apr 30, 2025 pm 03:34 PM

この記事では、PHP 7.1で導入されたPHPのヌル可能なタイプについて説明し、変数またはパラメーターが指定されたタイプまたはnullのいずれかを可能にします。読みやすさの改善、タイプの安全性、明示的な意図などの利点を強調し、宣言する方法を説明します

unset()とlink()関数の違いは何ですか?unset()とlink()関数の違いは何ですか?Apr 30, 2025 pm 03:33 PM

この記事では、プログラミングのunset()とlink()関数の違いについて説明し、目的とユースケースに焦点を当てています。 unset()はメモリから変数を削除しますが、link()はファイルシステムからファイルを削除します。どちらもEFFECにとって重要です

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。