2011-07-12 4 views
0

私は最初の引数が変数が存在するかどうかをチェックするPHP関数が必要です関数が存在し、変数が存在する場合はそれをエコーし​​、変数が存在しない場合は、関数の第2引数に与えられた変数のデフォルト値をエコーし​​ます。最後に値をエコーし​​た直後に関数に渡された変数の両方を削除(削除)します。変数の存在をチェックするためのphp関数、変数が存在しない場合は変数のデフォルト値を書きます

は単に:

 
function if_exists ($argument, $default) 
{ 
// if $argument exist then echo it's value and then remove $argument variable. 
// if the $argument doesn't exist then echo it's $default value and then remove $default variable. 
} 

私はこのようにそれを使用します。

 
$any_variable 
if_exists ($any_variable, 'this variable is not defined'); 

このコードは私のための完璧な仕事をしていません。

 
function if_exist(&$argument, $default = '') 
{ 
    if (isset ($argument)) 
    { 
     echo $argument; 
    } 
    else 
    { 
     echo $default; 
     unset ($default); 
    } 
} 

感謝を。

+0

する機能を必要としませんか?また、 - http://stackoverflow.com/questions/6654538/php-function-to-unset-variables-passed-by-reference:あなたは(を除いて異なるスコープで変数を「削除」することはできませんこれはどのように異なっていますグローバルスコープの場合)。あなたは、私はあなたの助けに感謝しますことができれば – phant0m

+0

その関数が私のために右に動作しません、私はこの質問で述べてまったく同じことを必要とする、私を導いてください、そのコードが私のためにでたらめで、私はあなたのいくつかの新鮮なコードが必要ですみんな –

+0

'if_exists()'という関数が何かを出力し、与えられた引数を追加変更すると、約2ヶ月間あなた自身が混乱します。 – KingCrunch

答えて

2

あなたがそれを必要としないのはなぜあなたはこの

$var = isset($var) ? $var : $default; 
+0

"と最後に、値をエコーし​​た直後に関数に渡された変数を両方とも削除(削除)します。彼の少し異なる質問に対する私の答えを見てください:http://stackoverflow.com/questions/6643692/php-function-to-check-variable-exist-or-not-outside-of-function/6643867#6643867 – phant0m

+0

こんにちはキング、あなたは機能のコードをラップすることができます、それは大きな助けになるでしょう。ありがとう。 –

+0

@Pawan:私はあなたにまったく同じイディオムを与えました(上記のリンク先と同じ)。それは関数内にあってはならないため、関数内にはありません。私はKingCrunchがそれをあなたのための機能に入れてくれるのではないかと疑います。 – phant0m

関連する問題