ホームページ  >  記事  >  バックエンド開発  >  配列アルゴリズムを見つける

配列アルゴリズムを見つける

WBOY
WBOYオリジナル
2016-06-23 13:39:041063ブラウズ

「配列 1」と「配列 2」によると、「配列 3」のような結果が得られますが、より効率的であることが最善です。 配列 2 はいくつかの属性が設定されており、配列 1 は入力のみを行うことができる製品です。特定またはいくつかの属性

//数组1Array(    [100008] => Array        (            [5] => Array                (                    [name] => 价格                    [0] => 不限                )            [6] => Array                (                    [name] => 折扣                    [0] => 不限                )        )    [100009] => Array        (            [5] => Array                (                    [name] => 价格                    [8] => 0-29                )            [6] => Array                (                    [name] => 折扣                    [13] => 3-5折                )	   [7] => Array                (                    [name] => 出版社                    [20] => 北京大学出版社                )        ))//数组2Array(    [0] => Array        (            [attr_id] => 5            [attr_name] => 价格            [attr_value] => 0-29,30-49,50-99,100以上        )    [1] => Array        (            [attr_id] => 6            [attr_name] => 折扣            [attr_value] => 0-3折,3-5折,5-7折,7-10折        )    [2] => Array        (            [attr_id] => 7            [attr_name] => 出版社            [attr_value] =>        ))//得到结果:数组3Array(    [100008] => Array        (            [价格] => 不限            [折扣] => 不限            [出版社] =>         )    [100009] => Array        (            [价格] => 0-29            [折扣] => 3-5折            [出版社] => 北京大学出版社        ))




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

$a = array (  100008 => array (    5 => array (      'name' => '价格',      0 => '不限',    ),    6 => array (      'name' => '折扣',      0 => '不限',    ),  ),  100009 => array (    5 => array (      'name' => '价格',      8 => '0-29',    ),    6 => array (      'name' => '折扣',      13 => '3-5折',    ),    7 => array (      'name' => '出版社',      20 => '北京大学出版社',    ),  ),);$b = array (  0 => array (    'attr_id' => '5',    'attr_name' => '价格',    'attr_value' => '0-29,30-49,50-99,100以上',  ),  1 => array (    'attr_id' => '6',    'attr_name' => '折扣',    'attr_value' => '0-3折,3-5折,5-7折,7-10折',  ),  2 => array (    'attr_id' => '7',    'attr_name' => '出版社',    'attr_value' => '',  ),);foreach($a as $key=>$item) {  $t = array();  foreach($b as $v) {    $k = $v['attr_id'];    $t[$v['attr_name']] = isset($item[$k]) ? end($item[$k]) : $v['attr_value'];  }  $c[$key] = $t;}print_r($c);
Array(    [100008] => Array        (            [价格] => 不限            [折扣] => 不限            [出版社] =>         )    [100009] => Array        (            [价格] => 0-29            [折扣] => 3-5折            [出版社] => 北京大学出版社        ))

モデレーター、牛....

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