ホームページ >バックエンド開発 >PHPチュートリアル >対応する配列の結果を取得する方法。新しい対応する配列を形成する

対応する配列の結果を取得する方法。新しい対応する配列を形成する

WBOY
WBOYオリジナル
2016-06-23 14:25:561001ブラウズ

この投稿は qq914260102 によって最終編集されました: 2013-10-30 10:58:39

$t1 = Array ( 0 => '南昌', 1 => '南昌', 2 => '甘州', 3 => '九江', 4 => '九江')
$t2 = 配列 ( 0 => '良好', 2 => 'Excellent', 3 => 'Good', 4 => 'Excellent', 5 => 'Poor'

たとえば、上記の 2 つの配列があります。 $t1[0] と $t2[0]....$t1[i] と $t2[i] は対応しており、$t1[0] と $t2[0] は ===== 南昌、素晴らしいを表します。

$t1 をデリピートして新しい配列 $t11 = Array ( 0 => '南昌', 1 => '贛州', 2 => '九江'); を同時に作成したいと思います。 、$t2 Splitを実行します。 3 つの新しい配列が形成されます (それぞれ $t11 配列に対応する優良、良好、不良などを数えます)。それぞれ $t11 に関連付けられます。

南昌、贛州、九江の優れた数値統計。 ($t2を元に良い数値と悪い数値の数を計算します)
優れた配列は以下の通りです
$t2_yx=Array ( 0 => '1', 1 => '2', 2 => '0' );

良い配列は次のとおりです
$t2_lh=Array ( 0 => '1', 1 => '0', 2 => '1' );
悪い配列は次のとおりです
$ t2_cd=Array ( 0 => ; '0', 1 => '0', 2 => '1' );

これを実装するにはどのようなプログラムが使用されますか? 。ありがたい。

ディスカッションへの返信(解決策)

//第一步$t1 = Array ( 0 => '南昌', 1 => '南昌', 2 => '赣州', 3 => '九江', 4 => '赣州', 5 => '九江'); $t2 = Array ( 0 => '优秀', 1 => '良好', 2 => '优秀', 3 => '良好', 4 => '优秀', 5 => '差等' );$t = array_map(null, $t1, $t2);print_r($t);/* 得到Array(    [0] => Array        (            [0] => 南昌            [1] => 优秀        )    [1] => Array        (            [0] => 南昌            [1] => 良好        )    [2] => Array        (            [0] => 赣州            [1] => 优秀        )    [3] => Array        (            [0] => 九江            [1] => 良好        )    [4] => Array        (            [0] => 赣州            [1] => 优秀        )    [5] => Array        (            [0] => 九江            [1] => 差等        ))*///第二步$r = array();foreach($t as $v) {  $r[$v[0]][] = $v[1];}print_r($r);/*得到Array(    [南昌] => Array        (            [0] => 优秀            [1] => 良好        )    [赣州] => Array        (            [0] => 优秀            [1] => 优秀        )    [九江] => Array        (            [0] => 良好            [1] => 差等        ))*///第三步$r = array_map('array_count_values', $r);print_r($r);/*得到Array(    [南昌] => Array        (            [优秀] => 1            [良好] => 1        )    [赣州] => Array        (            [优秀] => 2        )    [九江] => Array        (            [良好] => 1            [差等] => 1        ))

次に言うことはありません

次に言うことはありません


アドバイスをお願いします。まだわかりません。

//第一步$t1 = Array ( 0 => '南昌', 1 => '南昌', 2 => '赣州', 3 => '九江', 4 => '赣州', 5 => '九江'); $t2 = Array ( 0 => '优秀', 1 => '良好', 2 => '优秀', 3 => '良好', 4 => '优秀', 5 => '差等' );$t = array_map(null, $t1, $t2);print_r($t);/* 得到Array(    [0] => Array        (            [0] => 南昌            [1] => 优秀        )    [1] => Array        (            [0] => 南昌            [1] => 良好        )    [2] => Array        (            [0] => 赣州            [1] => 优秀        )    [3] => Array        (            [0] => 九江            [1] => 良好        )    [4] => Array        (            [0] => 赣州            [1] => 优秀        )    [5] => Array        (            [0] => 九江            [1] => 差等        ))*///第二步$r = array();foreach($t as $v) {  $r[$v[0]][] = $v[1];}print_r($r);/*得到Array(    [南昌] => Array        (            [0] => 优秀            [1] => 良好        )    [赣州] => Array        (            [0] => 优秀            [1] => 优秀        )    [九江] => Array        (            [0] => 良好            [1] => 差等        ))*///第三步$r = array_map('array_count_values', $r);print_r($r);/*得到Array(    [南昌] => Array        (            [优秀] => 1            [良好] => 1        )    [赣州] => Array        (            [优秀] => 2        )    [九江] => Array        (            [良好] => 1            [差等] => 1        ))

他に何も言う必要はありません

終わらせてください。 。ありがとう。

マスターに終わらせてください。 。ありがとう。


実は当たり前のことですが、コードを少し変えるだけで
rree

表示方法を変更できるはずです。

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