2012-02-13 7 views

答えて

3

を...

...しかし、私はあなたの最善の策は、わずかの手だと思います代わりにif/else文。それは実際には何の違いもありません。ここ

$limit = (isset($_GET['limit']) ? $_GET['limit'] : 10; 

詳細情報 - http://www.lizjamieson.co.uk/9/short-if-statement-in-php/

+1

私に役立つリンクを与えたので、あなたに信用を与えました..しかし、ありがとうすべての投稿者。 –

+1

今後のご質問のために覚えています:) – SpaceBeers

1
$limit = isset($_GET['limit']) ? $_GET['limit'] : 10; 
3

短い場合は?

$limit = isset($_GET['limit']) ? $_GET['limit'] : 10; 
3
$limit = $_GET['limit'] ?: 10; 

これは、しかし、PHP 5.3(?)以上を想定しています。

+0

このパラメータは、制限パラメータがない場合に警告を生成します。 – akond

+0

@akond:いいえ、そうではありません。 – FtDRbwLXw6

+0

@akond:私はおそらく少し明確にすべきです。 'x?:y'の構文は" or 3進 "演算子と呼ばれ、機能的には'!empty(x)? x:y'である。例3の[Ternary Operator](http://php.net/manual/en/language.operators.comparison.php)セクションを参照してください。 'empty()'のように配列のキーが存在しない場合、警告はスローされません。 – FtDRbwLXw6

1

あなたは三項比較演算子を使用することができます:私はそれを聞いに開放するだろうがある場合

$limit = (isset($_GET['limit'])) ? $_GET['limit'] : 10; 
1

あなたが短く書くことができる:式

$limit = isset($_GET['limit']) ? $_GET['limit'] : 10; 

いっそだけ書き込み独自の関数

$limit = updateMyGetVar('limit', 10); 

function updateMyGetVar($var, $default = NULL){ 
    if (isset($_GET[$var])) 
    { 
    return $_GET[$var]; 
    } 
    else 
    { 
    return $default; 
    } 
} 
+0

新しい仕事を書くことが繰り返されない限り、ちょっと残念です。 – SpaceBeers

関連する問題