【opensips学习笔记】【五】变量的empty与null
2021-02-24 本文已影响0人
安安爸Chris
opensips中的var和avp变量对于empty和null的值判断起来有点迷惑,下面举个具体的例子来看一下
$var(var_null)=null;
$avp(avp_null)=null;
$var(var_empty)="";
$avp(avp_empty)="";
xlog("==============================\n");
xlog("var(var_null): '$var(var_null)'\n");
xlog("var(var_empty): '$var(var_empty)'\n");
xlog("avp(avp_null): '$avp(avp_null)'\n");
xlog("avp(avp_empty): '$avp(avp_empty)'\n");
xlog("==============================\n");
if $var(var_null) == null
xlog("var(var_null) == null\n");
if $var(var_null)
xlog("var(var_null) is TRUE\n");
if $var(var_null) != null
xlog("var(var_null) != null\n");
if !$var(var_null)
xlog("!var(var_null) is TRUE\n");
if $var(var_null) == ""
xlog("var(var_null) == \"\"\n");
if $var(var_null) == 0
xlog("var(var_null) == 0\n");
####################################
xlog("==============================\n");
if $avp(avp_null) == null
xlog("avp(avp_null) == null\n");
if $avp(avp_null)
xlog("avp(avp_null) is TRUE\n");
if $avp(avp_null) != null
xlog("avp(avp_null) != null\n");
if !$avp(avp_null)
xlog("!avp(avp_null) is TRUE\n");
if $avp(avp_null) == ""
xlog("avp(avp_null) == \"\"\n");
if $avp(avp_null) == 0
xlog("avp(avp_null) == 0\n");
#####################################
xlog("==============================\n");
if $var(var_empty) == null
xlog("var(var_empty) == null\n");
if $var(var_empty)
xlog("var(var_empty) is TRUE\n");
if $var(var_empty) != null
xlog("var(var_empty) != null\n");
if !$var(var_empty)
xlog("!var(var_empty) is TRUE\n");
if $var(var_empty) == ""
xlog("var(var_empty) == \"\"\n");
if $var(var_empty) == 0
xlog("var(var_empty) == 0\n");
#######################################
xlog("==============================\n");
if $avp(avp_empty) == null
xlog("avp(avp_empty) == null\n");
if $avp(avp_empty)
xlog("avp(avp_empty) is TRUE\n");
if $avp(avp_empty) != null
xlog("avp(avp_empty) != null\n");
if !$avp(avp_empty)
xlog("!avp(avp_empty) is TRUE\n");
if $avp(avp_empty) == ""
xlog("avp(avp_empty) == \"\"\n");
if $avp(avp_empty) == 0
xlog("avp(avp_empty) == 0\n");
xlog("==============================\n");
Feb 24 21:00:07 [313] ==============================
Feb 24 21:00:07 [313] var(var_null): '<null>'
Feb 24 21:00:07 [313] var(var_empty): ''
Feb 24 21:00:07 [313] avp(avp_null): '<null>'
Feb 24 21:00:07 [313] avp(avp_empty): ''
Feb 24 21:00:07 [313] ==============================
Feb 24 21:00:07 [313] var(var_null) == null
Feb 24 21:00:07 [313] !var(var_null) is TRUE
Feb 24 21:00:07 [313] ==============================
Feb 24 21:00:07 [313] avp(avp_null) == null
Feb 24 21:00:07 [313] !avp(avp_null) is TRUE
Feb 24 21:00:07 [313] ==============================
Feb 24 21:00:07 [313] var(var_empty) != null
Feb 24 21:00:07 [313] !var(var_empty) is TRUE
Feb 24 21:00:07 [313] var(var_empty) == ""
Feb 24 21:00:07 [313] WARNING:core:comp_scriptvar: invalid EQUAL operation: left is EXPRESSION/STRING_VAL, right is NUMBER/NO_VAL
Feb 24 21:00:07 [313] WARNING:core:do_action: error in expression at opensips.cfg:217
Feb 24 21:00:07 [313] ==============================
Feb 24 21:00:07 [313] avp(avp_empty) != null
Feb 24 21:00:07 [313] !avp(avp_empty) is TRUE
Feb 24 21:00:07 [313] avp(avp_empty) == ""
Feb 24 21:00:07 [313] ==============================