Tous les produits
Search
Centre de documentation

CDN:Fonctions logiques

Dernière mise à jour :Aug 19, 2026

Cette rubrique décrit la syntaxe, les paramètres et les valeurs de retour des fonctions logiques. Elle fournit également des exemples d'utilisation.

and

Le tableau suivant détaille cette fonction.

ÉlémentDescription
Syntaxeand(arg, ...)
Fonctionnement
  • Applique l'opérateur logique AND.
  • L'évaluation en court-circuit est activée : si une valeur est évaluée à false, les suivantes ne le sont pas.
ParamètreValeur à vérifier. Vous pouvez spécifier une ou plusieurs valeurs. Type de données : tous types.
Valeur de retourRenvoie true si toutes les valeurs sont évaluées à true ; renvoie false dès qu'une valeur est évaluée à false.
Exemple
if and($arg_mode, eq($arg_mode, 'set_header')) {
   add_rsp_header('USER-DEFINED-1','path1')
}
  • a. Si la requête inclut le paramètre mode et que sa valeur est set_header, définissez l'en-tête de réponse USER-DEFINED-1.
  • b. Si la requête n'inclut pas le paramètre mode, l'évaluation en court-circuit s'applique et l'opérateur de comparaison eq n'est pas exécuté. L'en-tête de réponse USER-DEFINED-1 n'est pas défini, car la fonction and() renvoie false.

or

Le tableau suivant détaille cette fonction.

ÉlémentDescription
Syntaxeor(arg, ...)
Fonctionnement
  • Applique l'opérateur logique OR.
  • L'évaluation en court-circuit est activée : si une valeur est évaluée à true, les suivantes ne le sont pas.
ParamètreValeur à vérifier. Vous pouvez spécifier une ou plusieurs valeurs. Type de données : tous types.
Valeur de retourRenvoie true si une valeur est évaluée à true ; renvoie false si toutes les valeurs sont évaluées à false.
Exemple
if and($http_from, or(eq($http_from, 'wap'), eq($http_from, 'comos'))) {
    rewrite(concat('http://example.com.cn/zt_d/we2015/', $http_from), 'enhance_redirect')
}
  • a. Si la requête inclut l'en-tête From et que sa valeur est wap ou comos, le code d'état HTTP 302 est renvoyé et la requête est redirigée vers http://example.com.cn/zt_d/we2015/[wap|comos].
  • b. Si la requête inclut l'en-tête From et que sa valeur est wap, l'évaluation en court-circuit s'applique et la valeur comos est ignorée. La fonction or() renvoie true.

not

Le tableau suivant détaille cette fonction.

ÉlémentDescription
Syntaxenot(arg)
FonctionnementApplique l'opérateur logique NOT. Les valeurs undef et false sont évaluées à false, tandis que les autres sont évaluées à true.
ParamètreValeur à vérifier. Vous ne pouvez spécifier qu'une seule valeur. Type de données : tous types.
Valeur de retour
  • true
  • false
Exemple
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)
}
  • Si la requête n'inclut pas le paramètre key, elle est refusée et le code d'état HTTP 403 est renvoyé.
  • Si la requête n'inclut pas cookie_user, elle est refusée. Le code d'état HTTP 403 et le corps de réponse "not cookie user" sont renvoyés.
  • La fonction not(0) renvoie false.
  • La fonction not(false) renvoie true.

eq

Le tableau suivant détaille cette fonction.

ÉlémentDescription
Syntaxeeq(arg1, arg2)
FonctionnementCompare deux valeurs pour déterminer si elles sont égales.
Paramètre
  • arg1 : première valeur à comparer. Type de données : tous types.
  • arg2 : deuxième valeur à comparer. Type de données : identique au paramètre arg1.
Valeur de retourRenvoie true si les deux valeurs sont égales ; renvoie false sinon.
Exemple
key1 = 'value1'
key2 = 'value2'
if and($arg_k1, $arg_k2, eq(key1, $arg_k1), ne(key2, $arg_k2)) {
    say('match condition')
}
  • a. Si la requête inclut les paramètres k1 et k2, les comparaisons sont effectuées.
  • b. Si la requête n'inclut pas le paramètre k1 ou k2, l'évaluation en court-circuit s'applique et les comparaisons ne sont pas effectuées.
  • c. eq : vérifie si la valeur du paramètre k1 est égale à value1.
  • d. ne : vérifie si la valeur du paramètre k2 n'est pas égale à value2.
  • e. La réponse contenant le corps « match condition » est renvoyée uniquement si les conditions suivantes sont remplies : la requête inclut les paramètres k1 et k2, la valeur de k1 est égale à value1 et la valeur de k2 n'est pas égale à value2.

ne

Le tableau suivant détaille cette fonction.

ÉlémentDescription
Syntaxene(arg1, arg2)
FonctionnementCompare deux valeurs pour déterminer si elles sont différentes.
Paramètre
  • arg1 : première valeur à comparer. Type de données : tous types.
  • arg2 : deuxième valeur à comparer. Type de données : identique au paramètre arg1.
Valeur de retourRenvoie true si les deux valeurs sont différentes ; renvoie false si elles sont égales.
Exemple
key1 = 'value1'
key2 = 'value2'
if and($arg_k1, $arg_k2, eq(key1, $arg_k1), ne(key2, $arg_k2)) {
    say('match condition')
}
  • a. Si la requête inclut les paramètres k1 et k2, les comparaisons sont effectuées.
  • b. Si la requête n'inclut pas le paramètre k1 ou k2, l'évaluation en court-circuit s'applique et les comparaisons ne sont pas effectuées.
  • c. eq : vérifie si la valeur du paramètre k1 est égale à value1.
  • d. ne : vérifie si la valeur du paramètre k2 n'est pas égale à value2.
  • e. La réponse contenant le corps « match condition » est renvoyée uniquement si les conditions suivantes sont remplies : la requête inclut les paramètres k1 et k2, la valeur de k1 est égale à value1 et la valeur de k2 n'est pas égale à value2.

null

Le tableau suivant détaille cette fonction.

ÉlémentDescription
Syntaxenull(v)
FonctionnementVérifie le type de données pour EdgeScript (ES).
Paramètrev : paramètre à transmettre. Type de données : tableau, dictionnaire ou chaîne. Renvoie false pour les autres types de données.
Valeur de retourType de données : Boolean.
  • Renvoie true si v est un tableau ou un dictionnaire.
  • Renvoie true si v est une chaîne vide.
  • Renvoie false si v est d'un autre type de données.
Exemples
d = []
say(null(d))
set(d, 1, 'v1')
say(null(d))
say(tostring(null('x')))
say(tostring(null('')))
Sortie :
true
    false
    false
    true