次のように、文字列を配列に収集します
$resolutions = array(
'1024 x 768',
'1680 x 1050 widescreen',
'1280 x 960',
'1280 x 1024',
'1280 x 800 widescreen',
'1440 x 900 widescreen'
);
sscanf
文字列から幅と高さを抽出するために使用できます。幅と高さを掛けて、どの解像度が最も多くのピクセルを持っているか、または最大の解像度であるかを判断する必要があります。
$getPixels = function($str) {
list($width, $height) = sscanf($str, '%d x %d');
return $width * $height;
};
次に、どちらかを使用しますarray_reduce
echo array_reduce(
$resolutions,
function($highest, $current) use ($getPixels) {
return $getPixels($highest) > $getPixels($current)
? $highest
: $current;
}
);
またはusort
配列
usort(
$resolutions,
function($highest, $current) use ($getPixels) {
return $getPixels($highest) - $getPixels($current);
}
);
echo end($resolutions);
最高解像度の1680 x 1050 ワイドスクリーンを取得するには