我可以在PHP的函数中使用常量吗?

2022-08-30 17:49:05

是否可以在 PHP 函数中使用 PHP 常量?

// in a different file
DEFINE ('HOST', 'hostname');
DEFINE ('USER', 'username');
DEFINE ('PASSWORD', 'password');
DEFINE ('NAME', 'dbname');

// connecting to database
function database()
{
    // using 'global' to define what variables to allow
    global $connection, HOST, USER, PASSWORD, NAME;
    $connection = new mysqli(HOST, USER, PASSWORD, NAME)
        or die ('Sorry, Cannot Connect');
    return $connection;
}

答案 1

你不需要在函数中声明它们,PHP将它们识别为全局。global

function database()
{
  // using 'global' to define what variables to allow
  global $dbc;
  $connection = new mysqli(HOST, USER, PASSWORD, NAME)
      or die ('Sorry, Cannot Connect');
  return $connection;
}

从 php.net:

像超全局变量一样,常量的范围是全局的。您可以访问脚本中任何位置的常量,而不考虑范围。有关作用域的详细信息,请阅读有关变量作用域的手册部分。


答案 2

你至少试过吗?:)

手册中:

像超全局变量一样,常量的范围是全局的。您可以访问脚本中任何位置的常量,而不考虑范围。


推荐