私は空の方が少し早いと分かっていますが、filter_has_varは少し速くなります(php.netで書かれています)ので、空きが早いかfilter_has_varですか?PHP filter_has_varと空ですか?
答えて
filter_has_var()
は、$ _GET、$ _POST、$ _ETCではなく元の入力データをチェックするため、何らかの理由でスーパーグロバールがパージされた場合に便利です。例えば
:あなたは、変数を上書きすることができますが
$_GET["injected"] = 123;
var_dump(filter_has_var(INPUT_GET, "injected")); // false
// or the other way round
、filter
拡張子が別のコピーにアクセスします。 INPUT_GET
は、超大域$_GET
の別名になりません。
それ以外の理由は統一のためです。 filter_varを広範囲に使用する場合、ルールセットは、isset()に対してfilter_has_var()を使用するほうが好きです。
しかし、愚かなパフォーマンス上の理由から、どちらか一方を使用しないでください。
ISSETチェック変数は、それぞれ独自の特定の用途を有しており、それに応じて使用されるべき変数
のデータ・タイプをチェックfilter_has_var値
を有する場合、変数は
空のチェックが存在する場合。
残念ながら空ですが、issetのように使用できます。varが存在するかどうか確認してください。 – user1112984
'$ var = NULL; * "変数が存在するかどうかをチェックする" *ちょっと誤解を招く可能性がある... NULL値と 'isset'に注意する – rdlowrey
filter_has_var
とempty
は全く異なる2つの機能です。これらの2つの機能の使用を入れ替えることは望ましくありません。
empty
は、実際に変数をPHPに空であると考えられるかどうかを確認する言語構造である:例えばnull
、array()
又は''
が空であると考えられます。
filter_has_var
は、単にPHPのスーパーグローバルのいずれかをチェック:$_GET
、$_POST
、$_SERVER
、$_ENV
又は$_COOKIE
変数が要求に渡されたことを確実にします。この関数は、varが空の場合でもtrueを返します。
PHP関数'filter_has_var()'はPHPのスーパーグローバルの1つをチェックしません。スーパーグローバルがデータを取得するデータの生の入力ソースをチェックします。 –
- 1. MySQLとPHPで空のデータベース?
- 2. php requireと空白
- 3. PHPの分割と空白
- 4. PHP名前空間とインターフェイス
- 5. PHPの空のvar == 0? PHPで
- 6. PHPでの空間インデックスクエリ
- 7. PHPで空のクエリ結果
- 8. 「空の」パターンとは何ですか?
- 9. PHP空のオブジェクトメンバー
- 10. PHP空の値
- 11. シャッフル配列がクラスPHPで空です
- 12. PHPは "0"を空として扱いますか?
- 13. PHPの空白表示とmysqli_fetch_arrayのエラー
- 14. PHPの名前空間と "使用"
- 15. PHPで空のレコードをスキップする
- 16. PHPロードjsonデータ、出力が空です
- 17. PHP $ _POST変数が空であることがあります
- 18. PHP!が空でないのはなぜですか?
- 19. PHP - 空の配列
- 20. PHPの空のコンストラクタ
- 21. PHPのISSET()VS!空()
- 22. MySQLとPHP - 変数が空白の場合でも挿入しますか?
- 23. PHPでセッションファイルを空にする方法はありますか?
- 24. PHP - 空の$ _POSTと$ _FILES - 大きなファイルをアップロードするとき
- 25. 空のときにmysql_queryから1を返さないphp count
- 26. PHPで空白の部分を削除しますか?
- 27. PHPで空の2D配列を作成しますか?
- 28. PHPの空白ページでデータベースを作成しますか?
- 29. PHPのファイルへの書き込み - 空ですか?
- 30. パフォーマンスのために名前空間が悪いですか? (PHP)
ベンチマークして結果をお知らせください。 –
私はそれを行ったが、それはフィルターが良いが、常に正しい作品ではないと思われる – user1112984
投稿結果 –