<?php
$deposits = [
'СБ' =>['RUR'=>['90'=>7.0, '180'=>9.1], 'USD'=>['90'=>3.2, '180' => 5.2]],
'ВТБ'=>['RUR'=>['90'=>7.2, '180'=>9.2], 'USD'=>['90'=>3.1, '180' => 5.0]],
'МКБ'=>['RUR'=>['90'=>7.1, '180'=>9.3], 'USD'=>['90'=>3.3, '180' => 5.1]],
];
function compareBy ($currency, $term) {
return function ($bank1, $bank2) use ($currency, $term) {
$value1 = $bank1[$currency][$term];
$value2 = $bank2[$currency][$term];
if ($value1 == $value2)
return 0;
else
return $value1 < $value2 ? -1 : 1;
};
}
function printArray ($array, $inline=false) {
$i=0;
foreach ($array as $key=>$value) {
if ($inline && $i++) echo ',';
echo "$key=>";
if (is_array ($value)) { echo '['; printArray
($value, true); echo ']'; } else echo $value;
if (!$inline) echo PHP_EOL;
}
if (!$inline) echo PHP_EOL;
}
uasort ($deposits, compareBy
('RUR', '90')); printArray
($deposits); uasort ($deposits, compareBy
('USD', '180')); printArray
($deposits);
PD9waHAKCiRkZXBvc2l0cyA9IFsKICAn0KHQkScgPT5bJ1JVUic9PlsnOTAnPT43LjAsICcxODAnPT45LjFdLCAnVVNEJz0+Wyc5MCc9PjMuMiwgJzE4MCcgPT4gNS4yXV0sCiAgJ9CS0KLQkSc9PlsnUlVSJz0+Wyc5MCc9PjcuMiwgJzE4MCc9PjkuMl0sICdVU0QnPT5bJzkwJz0+My4xLCAnMTgwJyA9PiA1LjBdXSwKICAn0JzQmtCRJz0+WydSVVInPT5bJzkwJz0+Ny4xLCAnMTgwJz0+OS4zXSwgJ1VTRCc9PlsnOTAnPT4zLjMsICcxODAnID0+IDUuMV1dLApdOwoKZnVuY3Rpb24gY29tcGFyZUJ5ICgkY3VycmVuY3ksICR0ZXJtKSB7CiAgcmV0dXJuIGZ1bmN0aW9uICgkYmFuazEsICRiYW5rMikgdXNlICgkY3VycmVuY3ksICR0ZXJtKSB7CiAgICAgJHZhbHVlMSA9ICRiYW5rMVskY3VycmVuY3ldWyR0ZXJtXTsKICAgICAkdmFsdWUyID0gJGJhbmsyWyRjdXJyZW5jeV1bJHRlcm1dOwogICAgIGlmICgkdmFsdWUxID09ICR2YWx1ZTIpCiAgICAgICByZXR1cm4gMDsKICAgICBlbHNlCiAgICAgICByZXR1cm4gJHZhbHVlMSA8ICR2YWx1ZTIgPyAtMSA6IDE7CiAgfTsKfQoKZnVuY3Rpb24gcHJpbnRBcnJheSAoJGFycmF5LCAkaW5saW5lPWZhbHNlKSB7CiAgJGk9MDsKICBmb3JlYWNoICgkYXJyYXkgYXMgJGtleT0+JHZhbHVlKSB7CiAgICBpZiAoJGlubGluZSAmJiAkaSsrKSBlY2hvICcsJzsKICAgIGVjaG8gIiRrZXk9PiI7CiAgICBpZiAoaXNfYXJyYXkgKCR2YWx1ZSkpIHsgZWNobyAnWyc7IHByaW50QXJyYXkgKCR2YWx1ZSwgdHJ1ZSk7IGVjaG8gJ10nOyB9CiAgICBlbHNlIGVjaG8gJHZhbHVlOwogICAgaWYgKCEkaW5saW5lKSBlY2hvIFBIUF9FT0w7CiAgfQogIGlmICghJGlubGluZSkgZWNobyBQSFBfRU9MOwp9Cgp1YXNvcnQgKCRkZXBvc2l0cywgY29tcGFyZUJ5ICgnUlVSJywgICc5MCcpKTsgcHJpbnRBcnJheSgkZGVwb3NpdHMpOwp1YXNvcnQgKCRkZXBvc2l0cywgY29tcGFyZUJ5ICgnVVNEJywgJzE4MCcpKTsgcHJpbnRBcnJheSgkZGVwb3NpdHMpOw==
СБ=>[RUR=>[90=>7,180=>9.1],USD=>[90=>3.2,180=>5.2]]
МКБ=>[RUR=>[90=>7.1,180=>9.3],USD=>[90=>3.3,180=>5.1]]
ВТБ=>[RUR=>[90=>7.2,180=>9.2],USD=>[90=>3.1,180=>5]]
ВТБ=>[RUR=>[90=>7.2,180=>9.2],USD=>[90=>3.1,180=>5]]
МКБ=>[RUR=>[90=>7.1,180=>9.3],USD=>[90=>3.3,180=>5.1]]
СБ=>[RUR=>[90=>7,180=>9.1],USD=>[90=>3.2,180=>5.2]]