PHP:Can';在函数中不指定常数?

PHP:Can';在函数中不指定常数?,php,Php,我有一个名为getSources()的函数;在这个函数中,我想轻松地为常数赋值。我想这会管用的: const A = 1; const B = 2; const C = 3; const D = 4; 我可以这样做: $someValue = A; 但它不起作用。我错过了什么?我不希望这些变量超出此函数的范围。请改用define define('A', 1); 改用define define('A', 1); 您需要使用作用域解析运算符(:)来访问它们(如果它们被设置为类的const)

我有一个名为getSources()的函数;在这个函数中,我想轻松地为常数赋值。我想这会管用的:

const A = 1;
const B = 2;
const C = 3;
const D = 4;
我可以这样做:

$someValue = A;
但它不起作用。我错过了什么?我不希望这些变量超出此函数的范围。

请改用define

define('A', 1);
改用define

define('A', 1);

您需要使用作用域解析运算符(
)来访问它们(如果它们被设置为类的
const


否则,您需要使用使标识符全局化的
define()

您需要使用范围解析操作符(
)来访问它们(如果它们被设置为类的
常量)

否则,您需要使用
define()

define('myname', 'myvalue');
echo myname;
//输出

myvalue
试一试

//输出

myvalue
你可以这样做

function getSources()
{
    define(A,1);
    define(B,2);
    ....
 }
像这样你可以解决它

你可以这样做

function getSources()
{
    define(A,1);
    define(B,2);
    ....
 }

这样您就可以解决它了

您是否尝试过使用
define()
。?常量不是变量,您不能将其范围限制在函数中。它们始终在全局范围内,无论您在何处定义它们。您是否尝试过使用
define()
。?常量不是变量,您不能将其范围限制为函数。无论你在哪里定义它们,它们总是在全局范围内。但这是全局的吗?还是只能在函数中访问?全局课程。。您是否阅读了有关的文档?但这是全球性的吗?还是只能在函数中访问?全局课程。。您是否阅读了有关的文档?