ホームページ  >  記事  >  バックエンド開発  >  PHPの配列は正しいですか?

PHPの配列は正しいですか?

小老鼠
小老鼠オリジナル
2023-06-30 15:12:091093ブラウズ

php 配列には順序があります。ソート方法は次のとおりです: 1. sort() 関数を使用して昇順にソートし、構文は「sort(array)」です; 2. rsort() 関数を使用して降順にソートします、構文は「rsort(array)」 )"; 3. 使用 shuffle() 関数はランダムな並べ替えを実行でき、構文は「shuffle(array)」です。

PHPの配列は正しいですか?

このチュートリアルの動作環境: Windows 10 システム、PHP8.1.3 バージョン、Dell G3 コンピューター。

php は、さまざまな配列の並べ替えニーズ (キー値、キー名、昇順、降順など) に対応するさまざまな組み込み関数を提供します。

1. 配列を昇順に並べ替える

PHP には、よく使用される 3 つの配列の昇順並べ替え関数があります:

sort():配列要素を昇順に並べ替えます。

asort(): 関連付けられた配列のキー値に従って配列を昇順に並べ替えます。

ksort(): 配列を、キー値に基づいて昇順に並べ替えます。関連付けられた配列のキー名

1. sort() 関数を使用します

sort() 関数は、配列要素を昇順 (小さいものから大きいものへ、低いものから高いものまで)。

<?php
header("Content-type:text/html;charset=utf-8");
$arr1 = array(10, 23, 5, 12, 84, 16);
sort($arr1);
var_dump($arr1);
 
$arr2= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
sort($arr2);
var_dump($arr2);
?>

出力:

PHPの配列は正しいですか?

sort() 関数には、$array (必須) と $sortingtype (省略可能) の 2 つのパラメーターがあります。

このうち、$sortingtype パラメータは、関数のソート モードを定義し、配列の要素/項目の比較方法を指定するために使用されます。デフォルト値は "SORT_REGULAR" です。

$sortingtype パラメータは次の値に設定できます:

0 = SORT_REGULAR: 型を変更せずに配列要素を通常どおり比較します (デフォルト値);

1 = SORT_NUMERIC : 配列要素を数値として扱います;

2 = SORT_STRING: 配列要素を文字列として扱います;

3 = SORT_LOCALE_STRING: 現在のロケール (setlocale() の変更で利用可能) に基づいて配列要素を比較します文字列として。

4 = SORT_NATURAL: natsort() と同様に、配列要素ごとに文字列を「自然な順序」で並べ替えます。これは PHP5.4.0 の新機能です。

5 = SORT_FLAG_CASE: SORT_STRING または SORT_NATURAL (またはビットごとの操作) と組み合わせて、大文字と小文字を区別しない文字列の並べ替えを行う機能。

<?php
header("Content-type:text/html;charset=utf-8");
$arr1 = array(10, 23, 5, 12, 84, 16);
sort($arr1,2);
var_dump($arr1);
 
$arr2= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
sort($arr2,1);
var_dump($arr2);
?>

出力結果:

PHPの配列は正しいですか?

sort() 関数はインデックス関係を維持せず、配列内の元のキー名を削除して割り当てます。新しい数字キー名。

<?php
header("Content-type:text/html;charset=utf-8");
$age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16);
sort($age);
var_dump($age);
?>

出力:

PHPの配列は正しいですか?

sort() 関数は、値とインデックスの関係が異なる配列 (数値配列) に使用できます。重要ですが、インデックス間の関係の値と配列が適切ではありません。この時点で、asort() 関数と ksort() 関数を使用する必要があります。

2. asort() 関数を使用します

asort() 関数は、キー値に基づいて連想配列を昇順に並べ替えますが、変更は行いません元の配列内のキー名。

header("Content-type:text/html;charset=utf-8");
$age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16);
asort($age);
var_dump($age);
?>

出力:

PHPの配列は正しいですか?

asort() 関数にも 2 つのパラメータがあります。パラメータ値は sort() 関数と同じです。それらを参照できます。

3. ksort() 関数を使用します

ksort() 関数は、キー名に従って連想配列を昇順に並べ替えますが、キー名は変更しません。元の配列内のキー名。

<?php
header("Content-type:text/html;charset=utf-8");
$age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16);
ksort($age);
var_dump($age);
?>

出力:

PHPの配列は正しいですか?

<?php
header("Content-type:text/html;charset=utf-8");
$arr= array("l"=>"lemon", "o"=>"orange", "b"=>"banana", "a"=>"apple");
ksort($arr);
var_dump($arr);
?>

出力:

PHPの配列は正しいですか?

ksort() 関数にも 2 つのパラメータがあります、パラメータの値はsort()関数と同じなので参照できます。

以上がPHPの配列は正しいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。