0

変数チェックをループする方法がわからないようです。私がやろうとしているのは、これら2つの変数をチェックするようなものですが、ループ内にあります

if(isset($_GET['action'])){
    $action = $_GET['action'];
}
else{
    $action = NULL;
}

if(isset($check)){
    $check = $check;
}
else{
    $check = NULL;
}

このようなことをしたい、できればもっと効率的にしたい

$variables = array($_GET['action'], $check);
$define = array($action, $check);

foreach($variables as $variable){
 if(isset($variable){
   $variable = $define;
 }
}

error_reporting(E_ALL)を開いている間、エラーを表示したくないのですが、誰かがこれを手伝ってくれますか?

4

1 に答える 1

1

変数が設定されていない場合、最初の行で警告が表示されます。

$variables = array($_GET['action'], $check);    // here you are possibly using unset variables

少し短く書きたい場合は、三項演算子を使用できますが、それだけです。

$action = isset($_GET['action']) ? $_GET['action'] : NULL;
$check = isset($check) ? $check : NULL;

1回のスイープで通常の変数とスーパーグローバルの組み合わせをチェックするより効率的な方法はないと思います。

于 2012-05-31T15:47:40.473 に答える