2012-04-28 19 views
0

私の頭脳では解決できない問題、すなわちif-else条件の作成に問題があります。 960x540は値 "1"を取得する値です。すべて一方の側から960x540の数の値が増加すると、これよりも小さい値(例えば800x480)は値「1」を再び取得し、同様の状況540x960(480x800などが小さい順に降順) 1000x540または960x600)、 "1"ではなく変数に "2"を指定してください...私が問題を明確に記述したことを希望します。 例960x540と全体の価値を乗算することをお勧めしました。これで簡単に作業できます。しかし問題は、私が携帯電話の画面解像度で作業するという事実にあります。その理由は、800x600ピクセルのような低解像度のデスクトップについては忘れてしまいます。 540x960の解像度の画面...悪い英語を申し訳ありません。数字で作業する場合のIF ELSE条件

+4

「私が問題を明確に記述したことを希望します」。 Err、私はそうは思わない。 –

+0

正確にはっきりしないものは何ですか? – user1103744

+0

@ user1103744リクエストはすべてプレーンテキストであり、構造化されていないため、問題を理解するのがさらに難しくなります。私は問題を解決しようとし、私の答えでそれを説明しようとしました。私が解決のための要求を正しく受けているかどうか確認してください。たぶんあなたの質問を編集し、リストを追加してください。 – Smamatti

答えて

1

私はあなたの要求をより明確に説明しようとします。 (私はすべての権利を得たかわからないので、私はあなたの質問を編集しませんでした)

  • 960x540の=> 1

値が小さい=> 1

  • 800×480

大きな値(各次元)=> 2

  • 1000x540
  • 960x600

あなたはx軸とyの解像度の両方を見て、あなたの結果を決定する必要があります。 これは本当に複雑な状態になるため、特定の解像度を確認しないでください。

  • xとy(幅と高さ)を抽出します。
  • 個別にテストしてください。

あなたの文があれば、次のようになります。

if ($x > 960 || $y > 540) 
    $result = 2; 
else 
    $result = 1; 
+0

モバイルデバイス向けに開発する場合は、ポートレートとランドスケープビューのサポートに問題が発生する可能性があります。あなたのステートメントでは、 'x> y'の解像度に依存しています。私はあなたがPHPコードでこれがなぜ必要なのかわかりませんが、それがレイアウト上の目的のためであれば、CSSのメディアクエリをチェックしたいかもしれません。 – Smamatti

+0

あなたは私を完全に理解しています。あなたの答えとあなたの理解をありがとう!ところで、私はメディアクエリを使用しています。問題は、このソリューションを使用して大きな画像をPHP(+ jsとcookies)で削除したいということです。 – user1103744

0

あなたは数学のこのビットに興味があるかもしれない:

ビデオの幅を渡すことによって、あなたは高さの比を得ることができます(4:3):

$height = round(floor($width/1.330),-1);あなたは1.330(16:9)のための1.770に変更することができ番目ループ

例荒いと追加160:

$i=160; 
while($i<=1024){ 
    $height = round(floor($i/1.330),-1); 
    $ratios[]=array('width'=>$i,'height'=>$height); 
    $i=($i+160); 
} 
print_r($ratios); 

/* 
Array 
(
    [0] => Array 
     (
      [width] => 160 
      [height] => 120 
     ) 

    [1] => Array 
     (
      [width] => 320 
      [height] => 240 
     ) 

    [2] => Array 
     (
      [width] => 480 
      [height] => 360 
     ) 

    [3] => Array 
     (
      [width] => 640 
      [height] => 480 
     ) 

    [4] => Array 
     (
      [width] => 800 
      [height] => 600 
     ) 

    [5] => Array 
     (
      [width] => 960 
      [height] => 720 
     ) 

) 
*/ 

希望します。

関連する問題