null に設定された既存のクエリ文字列パラメーターと、欠落しているパラメーターを区別できるようにしたいと考えています。したがって、質問の部分は次のとおりです。
- パラメータがクエリ文字列に存在するかどうかを確認する方法
- クエリ文字列で null 値を渡すための確立された方法は何ですか? (例: param=null または param=(nothing) )
ありがとう
null に設定された既存のクエリ文字列パラメーターと、欠落しているパラメーターを区別できるようにしたいと考えています。したがって、質問の部分は次のとおりです。
ありがとう
または使用array_key_exists
:
if(array_key_exists("myParam", $_GET)) {
}
私は空の値をサーバーに渡すための「規則」に熱心ではありませんでした.たとえば、変数の存在をテストし、それらをトリミングして空であることをテストすることに慣れています.
に格納されている値は$_GET
、$_POST
実行時に明示的に設定されていない限り、文字列または配列のみになります。query=string
値のクエリ文字列がある場合は"string"
、代わりに次を使用query=null
します。値はになります"null"
。そのため、文字列であることに注意してください。
を送信query=
すると、値は""
または空の文字列になります。との違いに注意してください。値がnullでない場合はtrueになりますが、値が。と評価された場合はtrueになります。そのため、との両方に当てはまります。isset
empty
isset
empty
false
""
isset
empty
クエリ文字列パラメータがの文字列値に設定されているかどうかを確認したいだけの場合は"null"
、簡単に確認できます$_GET['query']=='null'
(確認する前に文字の大文字と小文字を調整することをお勧めします)。
2つではなく1つのifステートメントを使用する場合:
if ((isset($_REQUEST['name'])) && (!empty($_REQUEST['name'])))
{
$name= $_REQUEST['name'];
}