我有一个纯PHP脚本 - 没有框架,没有OOP - 像这样:
Declare @sql varchar(8000)
,@p_CODE varchar(100)
,@v_CODE VARCHAR(100)
Set @p_CODE = ('''ABCD'',''EFGH''')
Set @v_CODE = @p_CODE
select @sql = 'SELECT distinct
CODE
FROM TABLE
WHERE CODE in ('+@v_CODE+')
OR (''All'' in ('+@v_CODE+')
AND CODE in (SELECT DISTINCT
CODE
FROM TABLE ))'
Execute (@sql)
如何在<?php
define('VAR1', 'xxxxxxxxxx');
define('VAR2', 'xxxxxxxxxx');
define('VAR3', 'xxxxxxxxxx');
function myFunction()
{
// I need to access VAR1, VAR2, VAR3 here
}
$output = myFunction();
内访问VAR1
,VAR2
和VAR3
?通过在函数内声明它们为myFunction()
?
答案 0 :(得分:4)
常量的范围已经是全局的,所以只需按原样使用它们:
define('VAR1', 'xxxxxxxxxx');
define('VAR2', 'xxxxxxxxxx');
define('VAR3', 'xxxxxxxxxx');
function myFunction()
{
echo VAR1;
// I need to access VAR1, VAR2, VAR3 here
}
$output = myFunction();
答案 1 :(得分:1)
根据http://php.net/manual/en/language.constants.php&#34; ,常量的范围是全局的。您可以在脚本中的任何位置访问常量,而不考虑范围。&#34;
所以,这很简单:
<?php
define('VAR1', 'xxxxxxxxxx');
define('VAR2', 'xxxxxxxxxx');
define('VAR3', 'xxxxxxxxxx');
function myFunction()
{
echo VAR1;
echo VAR2;
echo VAR3;
}
$output = myFunction();