我需要$layers
从函数内部访问isOk($layer)
,但是我尝试外部函数变量$layers
的一切都可以,但是在函数内部,即使使用全局也是返回 null。
这是代码:
$layers = array();
foreach($pcb['PcbFile'] as $file){
if(!empty($file['layer'])){
$layers[$file['layer']] = 'ok';
}
}
// Prints OK!
var_dump($layers);
function isOk($layer){
global $layers;
// Not OK! prints NULL
var_dump($layers);
if(array_key_exists($layer, $layers))
return ' ok';
return '';
}
// NOT OK
echo isOk('MD');
我总是使用面向对象,但这太简单了,我用一个简单的函数做了……为什么$layers
在函数内部没有被正确地“接收”?