および
項目 | 説明 |
構文 | |
説明 | |
パラメーター | チェックする値。The value that you want to check. 1つ以上の値を指定できます。 データ型: 任意の型。 |
戻り値 | すべての値がtrueに評価された場合はtrue を返し、値がfalseに評価された場合はfalse を返します。 |
例: | if and($arg_mode, eq($arg_mode, 'set_header')) {
add_rsp_header('USER-DEFINED-1','path1')
}
|
または
項目 | 説明 |
構文 | |
説明 | |
パラメーター | チェックする値。The value that you want to check. 1つ以上の値を指定できます。 データ型: 任意の型。 |
戻り値 | 値がtrueに評価された場合はtrue を返し、すべての値がfalseに評価された場合はfalse を返します。 |
例: | if and($http_from, or(eq($http_from, 'wap'), eq($http_from, 'comos'))) {
rewrite(concat('http://tech.com.cn/zt_d/we2015/', $http_from), 'enhance_redirect')
}
リクエストにfrom ヘッダーが含まれ、その値が [wap | comos] の場合、HTTP 302ステータスコードが返され、リクエストは http://tech.com.cn/zt_d/we2015/[wap | comos] にリダイレクトされます。 リクエストにfrom ヘッダーが含まれ、その値がwap の場合、短絡評価が有効になり、eq comos の値は無視されます。 or() 関数はtrue の値を返します。
|
not
項目 | 説明 |
構文 | not(arg)
|
説明 | NOT論理演算子を実行します。 undef とfalse の値はfalseに評価され、その他の値はtrueに評価されます。 |
パラメーター | チェックする値。The value that you want to check. 指定できる値は1つだけです。 データ型: 任意の型。 |
戻り値 | |
例: | そうでない場合は if not($arg_key) {
exit(403)
}
if not($cookie_user) {
exit(403, 'not cookie user')
}
if not(0) {
exit(403)
}
if not(false) {
exit(403)
}
リクエストにkey パラメーターが含まれていない場合、リクエストは拒否され、HTTP 403ステータスコードが返されます。 リクエストにcookie_user が含まれていない場合、リクエストは拒否されます。 HTTP 403のステータスコードとレスポンス本文「not cookie user」 が返されます。 not(0) 関数はfalse の値を返します。
not(false) 関数はtrue の値を返します。
|
eq
項目 | 説明 |
構文 | eq(arg1, arg2)
|
説明 | 2つの値が等しいかどうかを比較します。 |
パラメーター | |
戻り値 | 2つの値が等しい場合はtrue を返し、等しくない場合はfalse を返します。 |
例: | key1 = 'value1'
key2 = 'value2'
if and($arg_k1, $arg_k2, eq(key1, $arg_k1), ne(key2, $arg_k2)) {
say('match condition')
}
要求がk1 およびk2 パラメータの両方を含む場合、比較演算が実行される。 要求がk1 またはk2 パラメータを含まない場合、短絡評価が有効となり、比較動作は実行されない。 eq : k1 パラメーターの値がvalue1 に等しいかどうか。
ne : k2 パラメーターの値がvalue2 と等しくないかどうか。
レスポンス本文の一致条件 を含むレスポンスは、リクエストにk1 パラメーターとk2 パラメーターの両方が含まれ、k1 パラメーターの値がvalue1 に等しく、k2 パラメーターの値がvalue2 に等しくない場合にのみ返されます。
|
ne
項目 | 説明 |
構文 | ne(arg1, arg2)
|
説明 | 2つの値が等しくないかどうかを比較します。 |
パラメーター | |
戻り値 | 2つの値が等しくない場合はtrue を返し、等しい場合はfalse を返します。 |
例: | key1 = 'value1'
key2 = 'value2'
if and($arg_k1, $arg_k2, eq(key1, $arg_k1), ne(key2, $arg_k2)) {
say('match condition')
}
要求がk1 およびk2 パラメータの両方を含む場合、比較演算が実行される。 要求がk1 またはk2 パラメータを含まない場合、短絡評価が有効となり、比較動作は実行されない。 eq : k1 パラメーターの値がvalue1 に等しいかどうか。
ne : k2 パラメーターの値がvalue2 と等しくないかどうか。
レスポンス本文の一致条件 を含むレスポンスは、リクエストにk1 パラメーターとk2 パラメーターの両方が含まれ、k1 パラメーターの値がvalue1 に等しく、k2 パラメーターの値がvalue2 に等しくない場合にのみ返されます。
|
null
項目 | 説明 |
構文 | null(v)
|
説明 | AScriptにデータ型が指定されているかどうかをチェックします。 |
パラメーター | v: 渡すパラメータ。 データ型: 配列、辞書、または文字列。 他のデータ型に対してfalseの値が返されます。 |
戻り値 | データ型:Boolean vの値が配列またはディクショナリの場合、trueの値が返されます。 vの値が空の文字列の場合、trueの値が返されます。 vが他のデータ型に設定されている場合、falseの値が返されます。
|
例: | d = []
say(null(d))
set(d, 1, 'v1')
say(null(d))
say(tostring(null('x')))
say(tostring(null('')))
出力: true
false
false
true
|