あなたは、単純なarray_filter()
を介してそれらを渡すと、使用して、配列からNULL値を削除したい場合はisset()
機能は素晴らしい選択肢のように思えるに建て:ISSET()
$dairyFree = true;
$toppings = [
'tomato',
'oregano',
'pepperoni',
($dairyFree) ? null : 'cheese',
];
$toppings = array_filter($toppings, 'isset');
かなりシンプルですが、array_filter()
でisset()
を使用すると、次の警告発生します
警告:array_filter()は、パラメータ2が有効なコールバック、関数「ISSET」が見つかりか無効ではない関数名であることを期待しています。
クロージャ内の同じコードをラップするのは簡単ですが、私の質問は - なぜstrlen()
のような他の内部機能isset()
機能で、ボークをPHPとはないでしょうか?
あなたはissetを呼び出すカスタム関数を記述しなければなりません。 – Yoleth
_これは**言語構成であり、関数**ではないため、可変関数を使用して呼び出すことはできません._または、関数が必要な場所で使用されます。 – AbraCadaver