獲得對外宣稱的功能陣列的每個功能傳遞參數沒有通過參數在PHPGET數組聲明的功能,各功能之外沒有在PHP
<?php
$arr2= array('00','12','23','73');
function f1() {
print_r($arr2);
}
f1();
?>
在這裏我們可以通過數組F1($ ARR2),但我想知道是否我們在函數'f1'內不接受數組,而不通過,如設置全局或其他的東西?
我只想知道,不管它是否可能?
獲得對外宣稱的功能陣列的每個功能傳遞參數沒有通過參數在PHPGET數組聲明的功能,各功能之外沒有在PHP
<?php
$arr2= array('00','12','23','73');
function f1() {
print_r($arr2);
}
f1();
?>
在這裏我們可以通過數組F1($ ARR2),但我想知道是否我們在函數'f1'內不接受數組,而不通過,如設置全局或其他的東西?
我只想知道,不管它是否可能?
使用global
:
function f1() {
global $arr2;
print_r($arr2);
}
然而,隨着@steven已經指出的,它被認爲是不好的做法。
這些線程說說爲什麼全局變量被認爲是不好:
在函數內部聲明瞭許多數組,它可以用於各種其他函數。所以我把這些數組放在函數的外面,在我需要的每個函數中設置它爲'全局'。這是不好的主意嗎? – 2012-01-15 07:11:46
使用全局變量是可能的,但它通常被認爲是不好的做法。從php.net
例子:
<?php
function test() {
$foo = "local variable";
echo '$foo in global scope: ' . $GLOBALS["foo"] . "\n";
echo '$foo in current scope: ' . $foo . "\n";
}
$foo = "Example content";
test();
?>
使用global $arr2
:
<?php
$arr2= array('00','12','23','73');
function f1()
{
global $arr2;
print_r($arr2);
}
f1();
?>
是什麼背景?這些功能是什麼?什麼是確定的用例?你知道,可以有很多不同的答案,取決於具體情況。將問題標記爲不是真正的問題。 – 2012-01-15 07:15:41
如果你有許多功能都必須使用相同的數據,你通常會去上課和/或學習對象。使用'global'不是解決這個問題的好辦法。 – deceze 2012-01-15 07:20:41
@deceze:我跟着一個沒有使用類的結構,這就是爲什麼我去[全球]。 – 2012-01-15 07:24:06