-2

重複の可能性:
で行われる条件についてどこで読むことができますか?と :

ifelseまたは三項演算子を使用せずに次のことを実行したい:

$_GET['a']nullでない場合は、それ以外の場合は$a= $_GET['a']その値をに設定します"default"

やってみ$a= $_GET['a'] || "default"ました。しかし、それは機能しません。コードサンプルでこのようなものを見たのを覚えていますが、今は思い出せません。

4

3 に答える 3

2

ここでの最善の策、三項の場合だと思います。

この場合、isset check - を使用して、キーが設定されていて null でないかどうかを判断します。

$a = isset($_GET['a']) ? $_GET['a'] : "default"

or 演算子||は、PHP のように null 合体には機能しませんが、JavaScript では、false 以外の最初の結果に値を設定するために使用できるのを見たことがあるかもしれません。

例えば

var a = get['a'] || 'default';
于 2012-10-22T07:17:13.520 に答える
0

さて、ここの人々は、これほど遅くまで質問全体を読むことを気にしていないようです.

あなたが書いたシンタックスは、他のいくつかの言語では機能しますが、明らかにphpでは機能しません。ページでこの種の検証を頻繁に使用する場合は、三項演算子に固執するか、ショートカットとしてその関数を作成する必要があると思います。

function GET($v, $default)
{
    return !isset($_GET[$v]) || empty($_GET[$v]) ? $default : $_GET[$v];
}

$a = GET("a", "default");
于 2012-10-22T07:26:23.180 に答える
0

http://davidwalsh.name/php-ternary-examplesにあるこの PHP 短縮形の if/else (三項) 情報を参照してください。

そしてまた

http://davidwalsh.name/learning-ternary-operators-tips-tricks

于 2012-10-22T07:14:10.250 に答える