ホームページ  >  記事  >  バックエンド開発  >  PHP_PHP チュートリアルで配列要素の昇順、降順、並べ替えを解析する関数

PHP_PHP チュートリアルで配列要素の昇順、降順、並べ替えを解析する関数

WBOY
WBOYオリジナル
2016-07-21 15:04:401185ブラウズ

1、配列を素早く作成する関数 range()
たとえば、 range() 関数は 1 から 9 までの数値の配列を素早く作成できます:

コードをコピーします コードは次のとおりです。次のように:

$numbers=range(1,9);
echo $numbers[1];
?>

もちろん、range(9,1) を使用すると数値配列が作成されます9時から1時まで。同時に、 range() は a から z までの文字配列も作成できます:
コードをコピー コードは次のとおりです:

$numbers=range(a,z) ;
foreach ($numbers as $mychrs)
echo $mychrs." ";
?>

たとえば、range(A,z) と range(a,Z) を使用する場合は、大文字と小文字に注意してください。 ) 異なっています。
range() 関数には、ステップ サイズの設定に使用される 3 番目のパラメーターもあります。たとえば、range(1,9,3) によって作成される配列要素は、1、4、7 です。

2. PHP における通常の配列のソート
一般に、配列内の各要素は文字または数字で表されるため、配列の要素を昇順に並べることができます。例:

コードをコピー コードは次のとおりです:

$people=array('name','sex','nation','birth');
foreach ( $people as $ mychrs)
echo $mychrs." ";
sort($people);
echo "
---ソート後---
";
foreach ($ people as $mychrs )
echo $mychrs." ";
?>

昇順にソートされた配列要素は、出生名、国籍、性別として表示されます。 もちろん、sort() 関数では大文字と小文字が区別されます (順序は区別されます)。大きい文字から小さい文字までは : A...Z...a...z)
Sort() 関数には 2 番目のパラメーターもあります。これは、数値の比較に昇順ルールが使用されるか、または数値を比較するために使用されるかを示すために使用されます。文字列。例:
コードをコピー コードは次のとおりです:

echo "---数値の昇順に並べ替えます---
";
$num2= array('26' ,'3',);
sort($num2,SORT_NUMERIC);
foreach ($num2 as $mychrs)
echo $mychrs." ";
echo "
---文字の昇順で並べ替えます- --
";
$num3=array('26','3');
sort($num3,SORT_STRING);
foreach ($num3 as $mychrs)
echo $mychrs." " ;
?>

SORT_NUMERIC と SORT_STRING は、数値または文字の昇順を宣言するために使用されます。数字の昇順に並べると 3、26 になりますが、文字の昇順に並べると 26、3 になります。
昇順関数に加えて、PHP には、次のような rsort() 関数である降順または逆ソート関数もあります。
コードをコピーします コードは次のとおりです:

$ num1=range(1,9) ;
rsort($num1);

これは実際には range(9,1) と同等です

3. PHP における連想配列の並べ替え
PHP は、数値インデックス配列のサポートに加えて、連想配列もサポートします。たとえば、次の配列は関連 (連想) 配列です:

コードをコピー コードは次のとおりです:

$peoples=array('xm'=>'name','xb'= >'sex', 'mz'=>'nation','cs'=>'birth');

sort($peoples) を使用すると、デフォルトで要素定義値の昇順にソートされます。連想配列の asort() 関数表現、連想配列で最も重要なことは、キーワード (xm、xb、mz など) の昇順にソートできることです。この方法は関数 ksort( を使用することです)。 ) 関数。
コードをコピー コードは次のとおりです:

$peoples=array('xm'=>'name','xb'=>'sex','mz' => 'nation','cs'=>'birth');
foreach ($peoples as $mychrs)
echo $mychrs." ";
echo "
--昇順に並べられます要素値による --
";
asort($peoples);
foreach ($peoples as $mychrs)
echo $mychrs." ";
echo "
-- 並べ替えキーワードによる昇順 --
";
ksort($peoples);
foreach ($peoples as $mychrs)
echo $mychrs.";
?>

通常の配列に対する sort() 昇順関数を持つ逆ソート rsort() 降順関数に対応して、連想配列にも対応する降順関数があります: asort() 関数と arsort() 関数、ksort() 関数と krsort() 関数。
メモリ: プロトタイプ関数は sort() です。ここで、a と k は前に付ける必要がある連想配列を表し、逆ソートは r で変更されます。

4、PHP の配列要素はランダムに並べ替えられます
PHP の shuffle() 関数を使用して、次のように配列要素をランダムに並べ替えます:

コードをコピーする コードは次のとおりです:

$fer=array('cnbruce','cnrose','cnjames','cnanne');
shuffle($fer);
foreach ($fer as $mychrs)
echo $mychrs." " ;
?>

毎回異なる並べ替えの組み合わせが表示されます

5、PHPの配列は元の順序の逆順にソートされます
PHPのarray_reverse()関数を使用すると、配列の要素を元の順序の逆順にソートできます。例:

コードをコピー コードは次のとおりです:

$fer=array('cnbruce','cnrose','cnjames','cnanne');
foreach ( $fer as $ mychrs)
echo $mychrs." ";
$fer=array_reverse($fer);
echo "
--元の順序で逆にします--
";
foreach ($ fer as $mychrs)
echo $mychrs." ";
?> fer=array_reverse($fer); これより前の並べ替え関数は参照を宣言するだけで、元の配列を再定義しませんが、関数をデバッグすると、再定義する必要があります。これは、array_reverse() が元の配列の変更されたコピーを返すためです。元の配列が必要ない場合は、元の配列を再定義して上書きできます。それ以外の場合は、次のように、コピーを保存するために別の配列を定義する必要があります。 fer_bak=array_reverse($ fer);


http://www.bkjia.com/PHPjc/327752.html
www.bkjia.com
tru​​e
http://www.bkjia.com/PHPjc/327752.html
技術記事 1. 配列を迅速に作成する関数 range() たとえば、range() 関数は 1 から 9 までの数値の配列を迅速に作成できます。次のようにコードをコピーします。 ?php $numbers=range(1,9) ; エコー $numbers[1] ?もちろん...

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