【opensips學習筆記】【五】變量的empty與null

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] ==============================

?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容