php dosyasında nvl () fonksiyonu

3 Cevap php

Ben sadece bir php dosyasına bakıyorum ve aşağıdaki kod rastlamak var:

switch (nvl($mode))
{
  case "add" :
     print_add_category_form(nvl($id, 0));
     break;

  case "edit" :
     print_edit_category_form($id);
     break;
}

Nvl () fonksiyonu ne işe yarar?

3 Cevap

Kim bilir? Bu standart bir PHP işlevi değil. Bu işlev tanımlı olduğu için başka kod bakın.

Bildiğim kadarıyla bu iki parametre bekliyor rağmen Muhtemelen, Oracle'ın NVL fonksiyonu gibi olurdu.

Ben dili olarak PHP ile Google Code Search arama ve bunun gibi bir çok örnek vardır:

/**
* If $var is undefined, return $default, otherwise return $var.
*/
function nvl(&$var, $default = "")
{
    return isset($var) ? $var
                       : $default;
}

Ben ancak ceejayoz anlaşılacağı gibi kendinizi kod beyanı için iyi görünümlü kapalı olacağını düşünüyorum.

Oracle tarafından kullanılan NVL tanımı için aşağıdaki linki () Bkz. PHP hiçbiri vardır. Yani, örnek kod geliştirici benzer bir işlevi hayata olabilir.

http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/functions105.htm

Benim kodları Oracle tanımlanmış ne yakın benim kendi uygulama kullanın:

By the way: "nvl" just means "[n]ull [v]a[l]ue"

// Function: nvl
//
// Replaces null or '' string.
//
// PARAMETERS:
//   $val     - Value to be returned normally.
//   $replace - Value to be returned if $val is null or ''.
//
// RETURNS:
//   See parameters.

function nvl($val, $replace)
{
    if( is_null($val) || $val === '' )  return $replace;
    else                                return $val;
}