$t1=配列 ([0] => 1320 [1] => 990 [2] => 895 [3] => 790 [4] => 775 [5] => 745 [6] ] => 740 [7] => 680 [8] => 665 [9] => 535 )
$t2=配列 ( [0] => 甘州 [2] => 吉安 [3] => 九江 [5] => 平郷 [8] => [9] => Jiijiang )
$t11= これは値を記録するためのもの、
$t22= これは領域を記録するためのものです。
この方法なら、名前の重複によるデータの上書きは避けられますが、同じ加算が計算できるかはわかりません。
$t11=配列 ([0] => 2760 [1] => 990 [2] => 895 [3] => 2070 [4] => 740 [5] => 680 )
$t22= 配列 ([0] => 南昌 [1] => 贛州 [2] => 吉安 [3] => 九江 [4] => 平郷 [5] => 外側
計算結果は上記の通りです。 。つまり、t2 内の同じものを削除し、t1 にキー名を追加します。
まず $t2 配列 (t22) の重複排除の結果である配列を作成します
この新しい配列 (t22) をループし、地名ごとに $t2 配列をループします両方の値(場所名が同じ)の場合、この時点で $t2 に対応するキーを取得し、$t1 の値を取得し、それを a の(新しい配列の現在のループ項目)に追加します。新しい配列 ($t11) を作成し、t22 までループを継続します。 現在のループ内の $t2 の各サブ要素が比較されています。
$t22 までループを継続します。
この新しい配列 (t22) をループします。場所名ごとに、$t2 配列をループします。2 つの値 (場所名が同じ) の場合、$t2 に対応するキーを取得します。今度は $t1 から値を取得し、それを新しい配列 ($t11) (新しい配列の現在のループ項目) の (番目) に追加し、その下の $t2 のすべてのサブ要素までループを続けます。 t22 の現在のループを比較します。
$t22 をループし続けます。
コードの作成は専門家に依頼してください。
うーん
配列 ([0] => 南昌 [1] => 甘州 [2] => 集安 [3] => 九江 [6] => 平郷 [7] => 省外)
コードは直接記述する必要があります コードを入力するよりも高速です...
$t1=Array ( 0 => 1320 ,1 => 990 ,2 => 895 ,3 => 790 ,4 => 775 ,5 => 745 ,6 => 740 ,7 => 680 ,8 => 665 ,9 => 535 );$t2=Array ( 0 => '南昌' ,1 => '赣州' ,2 => '吉安' ,3 => '九江' ,4 => '南昌' ,5 => '九江' ,6 => '萍乡' ,7 => '省外' ,8 => '南昌' ,9 => '九江' ); $t22 = array_unique($t2);$t11 = array();foreach ($t22 as $key1=>$c){ foreach($t2 as $key2=>$c2){ if($c == $c2){ $t11[$key1] += $t1[$key2]; } }}print_r($t11);print_r($t22);
配列 ( [0] => 南昌 [1] => 吉安 [3] => 九江 [6] => Pingxiang [7 ] => 省外)
プロセスを入力するよりも直接コードを書いた方が早いはずです...
ありがとうございます。