-4

$_POST の配列を引数として使用する関数を定義しようとしていますが、何かが機能していません。これが私が持っているものです:なぜうまくいかないのですか? ありがとう。

function variables_set ($Array1, $Array2, $DayOfWeek) {
    if (isset($Array2)) {
        $DayOfWeek=array_unique($Array2); //Remove duplicate values in the array
    } else {
        $DayOfWeek=$Array1;                             
    }
}

variables_set ($_POST['selectM'], $_POST['hiddenM'], $Monday); //Call the function
4

1 に答える 1

2

isset()設定されていない変数を渡そうとするとすぐに通知がスローされるため、の使用は私にはあいまいに思えます。以下のコードを検討してください。

function test($a){
    echo '$a is' . (isset($a) ? '' : 'not').' set';
}

echo '$b is' . (isset($b) ? '' : 'not').' set';
test($b); // Notice: Undefined variable: b

また、これはインデックスと同じであることに注意してください。


編集:次のコードは、次のようになります。

function test($a){
    if(!is_null($a)){
        // do something with $a
    }
}

test(isset($_POST['selectM']) ? $_POST['selectM'] : null);
于 2012-10-28T21:20:18.870 に答える