0

関数内の別のphpファイルで宣言されている変数にアクセスする必要があります..どうすればできますか?

a.php

<?php

$global['words']=array("one","two","three");

echo "welcome"
?>

b.php

<?php

$words = $global['words'];
require_once('a.php');

print_r($global['words']);

function fun()
{

print_r($global['words']); // not displaying here

}

fun();
?>

これで、b.php ファイルの "$global['words']" 変数にアクセスできるようになりましたが、関数内ではアクセスできません。関数内で表示するにはどうすればよいですか?

4

2 に答える 2

1

推奨されるオプションは、パラメーターとして渡すことです。

function fun($local) {
    print_r($local['words']);
}

fun($global);

何らかの理由でそのアプローチを使用できない場合は、変数をグローバルとして宣言できます。

function fun() {
    global $global;
    print_r($global['words']);
}

fun();

または$GLOBALS配列を使用します。

function fun() {
    print_r($GLOBALS['global']['words']);
}

fun();

しかし、一般的に、グローバル変数の使用は悪い習慣と見なされています。

于 2013-09-12T16:21:27.263 に答える