おきどけ、
これに対処するために私が選択した方法は、最初にグラデーション 16 進値のリストを生成することです。ここからグラデーションを生成しました。
http://www.herethere.net/~samson/php/color_gradient/?cbegin=B5E1FF&cend=00092E&steps=6
次に、ここで開発した subval ソート関数を使用して、タイムスタンプで配列をソートしました
http://www.firsttube.com/read/sorting-a-multi-dimensional-array-with-php/
そして、位置に基づいて16進値を割り当てます...
これの簡単な表現はここにあります =>
<?php
$test = array(
array("test", 1),
array("test2", 2),
array("test4", 4),
array("test5", 5),
array("test3", 3),
array("test6", 6)
);
function subval_sort($a,$subkey) {
foreach($a as $k=>$v) {
$b[$k] = strtolower($v[$subkey]);
}
asort($b);
foreach($b as $key=>$val) {
$c[] = $a[$key];
}
return $c;
}
$test2 = subval_sort($test,'1');
foreach($test2 as &$t) {
if($t[1]==1){
array_push($t, "B5E1FF");
}
elseif($t[1]==2){$t[2]="96BDDC";}
elseif($t[1]==3){$t[2]="7899B9";}
elseif($t[1]==4){$t[2]="5A7596";}
elseif($t[1]==5){$t[2]="3C5173";}
elseif($t[1]==6){$t[2]="1E2C50";}
}
echo "<pre>";
print_r($test2);
echo"</pre>";
?>
誰かがこれでひどく間違ったことを見ることができますか?