"lemon", "a"=>"orange" /> "lemon", "a"=>"orange">
ホームページ バックエンド開発 PHPチュートリアル 二维数组排序,且上标重新排

二维数组排序,且上标重新排

Jun 13, 2016 am 10:48 AM
array data quot volume

二维数组排序,且下标重新排
如题,我对某字段排序,排好后,发现下标也跟着走,希望下标重新排,从0~开始排,问怎么做?

------解决方案--------------------

PHP code
$fruits = array("d"=>"lemon", "a"=>"orange", "b"=>"banana", "c"=>"apple");ksort($fruits);print "<pre class="brush:php;toolbar:false">";var_dump($fruits);<br><font color="#e78608">------解决方案--------------------</font><br>
ログイン後にコピー
PHP code
$ar = array(       array("10", 11, 100, 100, "a"),       array(   1,  2, "2",   3,   1)      );   array_multisort($ar[0], SORT_ASC, SORT_STRING,                $ar[1], SORT_NUMERIC, SORT_DESC);//SORT_ASC, SORT_DESC, SORT_REGULAR,SORT_NUMERIC, SORT_STRINGprint "<pre class="brush:php;toolbar:false">";                print_r($ar);<br><font color="#e78608">------解决方案--------------------</font><br>我想你需要这个——<br>看清楚最后一段代码的最后一个参数<br><br><br>Example #4 对数据库结果进行排序<br><br><br>  本例中 data数组中的每个单元表示一个表中的一行。这是典型的数据库记录的数据集合。  <br><br><br>例子中的数据如下:  <br><br><br>volume | edition<br>-------+--------<br>   67 |       2<br>   86 |       1<br>   85 |       6<br>   98 |       2<br>   86 |       6<br>   67 |       7<br><br><br>  数据全都存放在名为 data的数组中。这通常是通过循环从数据库取得的结果,例如 mysql_fetch_assoc()。  <br><br><br><?php <br />$data[] = array('volume' => 67, 'edition' => 2);<br>$data[] = array('volume' => 86, 'edition' => 1);<br>$data[] = array('volume' => 85, 'edition' => 6);<br>$data[] = array('volume' => 98, 'edition' => 2);<br>$data[] = array('volume' => 86, 'edition' => 6);<br>$data[] = array('volume' => 67, 'edition' => 7);<br>?>  <br><br><br>本例中将把 volume 降序排列,把 edition 升序排列。  <br><br><br>现在有了包含有行的数组,但是 array_multisort()需要一个包含列的数组,因此用以下代码来取得列,然后排序。  <br><br><br><?php <br />// 取得列的列表<br>foreach ($data as $key => $row) {<br>   $volume[$key]  = $row['volume'];<br>   $edition[$key] = $row['edition'];<br>}<br><br>// 将数据根据 volume 降序排列,根据 edition 升序排列<br>// 把 $data 作为最后一个参数,以通用键排序<br>array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);<br>?>  <br><br><br>数据集合现在排好序了,结果如下:  <br><br><br>volume | edition<br>-------+--------<br>   98 |       2<br>   86 |       1<br>   86 |       6<br>   85 |       6<br>   67 |       2<br>   67 |       7<br><br><br><br><font color="#e78608">------解决方案--------------------</font><br>设 $t 是排序的结果,下标不是升序的<br>则 $t = array_values($t);<br>就可化为下标升序的了<div class="clear">
                 
              
              
        
            </div>
ログイン後にコピー
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

新しいSSDにmacOSをインストールする方法 新しいSSDにmacOSをインストールする方法 Apr 13, 2023 pm 04:01 PM

macOS リカバリを使用して新しい SSD に macOS をインストールする方法 2009 年以降に構築された Mac には、リカバリ システムが組み込まれています。これにより、Mac をリカバリモードで起動できるようになります。このモードでは、内部ディスクの修復、Time Machine バックアップからのファイルの復元、オンライン ヘルプの取得、または macOS の再インストールを行うことができます。これらのツールを使用するには、インターネット接続が必要です。 macOS インストール ツールを使用して、コンピューターに取り付けられた新しい SSD に macOS をインストールできます。 Internet Recovery を使用して SSD に macOS をインストールするには: 製造元の指示に従ってください。

C# の Array.Sort 関数を使用して配列を並べ替える C# の Array.Sort 関数を使用して配列を並べ替える Nov 18, 2023 am 10:37 AM

タイトル: Array.Sort 関数を使用して C# で配列を並べ替える例 本文: C# では、配列は一般的に使用されるデータ構造であり、多くの場合、配列を並べ替える必要があります。 C# には Array クラスが用意されており、このクラスには配列を簡単に並べ替えるための Sort メソッドがあります。この記事では、C# で Array.Sort 関数を使用して配列を並べ替える方法を示し、具体的なコード例を示します。まず、Array.Sort 関数の基本的な使用法を理解する必要があります。 Array.So

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

PHPのarray_merge_recursive()関数を使用するシンプルで明確な方法 PHPのarray_merge_recursive()関数を使用するシンプルで明確な方法 Jun 27, 2023 pm 01:48 PM

PHP でプログラミングする場合、多くの場合、配列をマージする必要があります。 PHP には、配列のマージを完了するための array_merge() 関数が用意されていますが、配列内に同じキーが存在する場合、この関数は元の値を上書きします。この問題を解決するために、PHP は配列をマージして同じキーの値を保持できる array_merge_recursive() 関数を言語で提供し、プログラム設計をより柔軟にします。配列マージ

PHP で array_combine 関数を使用して 2 つの配列を結合して連想配列にする方法 PHP で array_combine 関数を使用して 2 つの配列を結合して連想配列にする方法 Jun 26, 2023 pm 01:41 PM

PHP には、配列操作をより便利かつ高速にする強力な配列関数が多数あります。 2 つの配列を結合して連想配列にする必要がある場合、PHP の array_combine 関数を使用してこの操作を実行できます。この関数は、実際には、ある配列のキーを別の配列の値として新しい連想配列に結合するために使用されます。次に、PHP の array_combine 関数を使用して 2 つの配列を結合して連想配列にする方法を説明します。 array_comb について学ぶ

LinuxのデフォルトLVMスペースを拡張する方法 LinuxのデフォルトLVMスペースを拡張する方法 Feb 19, 2024 pm 07:30 PM

1. LinuxLVM の概要 LinuxLogical VolumeManager (LVM) は、ディスクとストレージ領域を管理するためのツールであり、ボリューム グループと論理ボリュームを通じて柔軟なストレージ管理を提供します。 LVM の中核概念には、物理​​ボリューム、ボリューム グループ、論理ボリュームが含まれます。物理ボリューム (PhysicalVolume、PV): 物理ボリュームは、LVM がデータを保存するために使用する物理ハードディスクまたはパーティションです。 LVM は、1 つ以上の物理ボリュームをボリューム グループに結合します。ボリューム グループ (VG): ボリューム グループは、1 つ以上の物理ボリュームで構成される論理ストレージ ユニットです。論理ボリュームはボリューム グループ上に作成され、ストレージ スペースを動的に割り当て、再利用できます。システムには複数のボリューム グループを含めることができます。論理ボリューム (

データフォルダにはどんなデータが入っているのでしょうか? データフォルダにはどんなデータが入っているのでしょうか? May 05, 2023 pm 04:30 PM

データ フォルダーには、ソフトウェア設定やインストール パッケージなどのシステム データとプログラム データが含まれています。データ フォルダー内の各フォルダーは、データ ファイルがファイル名データを参照しているか拡張子を参照しているかに関係なく、異なる種類のデータ ストレージ フォルダーを表します。 , これらはすべて、システムまたはプログラムによってカスタマイズされたデータ ファイルです。データは、データ ストレージのためのバックアップ ファイルです。通常、meidaplayer、メモ帳、または Word で開くことができます。

PHPのarray_fill()関数の使い方の詳しい説明 PHPのarray_fill()関数の使い方の詳しい説明 Jun 27, 2023 am 08:42 AM

PHP プログラミングにおいて、配列は大量のデータを簡単に処理できる非常に重要なデータ構造です。 PHP は配列関連の関数を多数提供しており、array_fill() はその 1 つです。この記事では、array_fill() 関数の使い方と実際の応用におけるヒントを詳しく紹介します。 1. array_fill() 関数の概要 array_fill() 関数の機能は、同じ値で構成される指定された長さの配列を作成することです。具体的には、この関数の構文は次のとおりです。

See all articles