为了能够在先前在函数之外定义的函数中使用变量,我们这样做:
function animal() {
global $favAnimal, $personName;
//more code here
}
但是我们如何使用在该函数之外的函数中定义的变量?例如,以下内容不起作用:
function animal() {
$animalName = 'tiger';
}
animal();
echo $animalName; //prints nothing
答案 0 :(得分:2)
同样的方式。但是不要这样做。
function animal() {
global $animalName;
$animalName = 'tiger';
}
答案 1 :(得分:0)
除非该函数位于调用堆栈的上方且已将变量传递给被调用函数,否则无法访问其他函数的本地变量。但是,任何函数都可以向全局范围添加其他变量。
您好像在寻找return
声明:
function animal() {
$animalName = 'tiger';
return $animalName;
}
$name = animal();
echo $name; // prints 'tiger'
答案 2 :(得分:0)
function animal() {
return 'ounce';
}
echo animal();
你应该return
动物名称。
如果你想将某些东西传递给函数,请使用参数,而不是global
:
function animal($type) {
if ($type == 'cat') {
return 'tiger';
} else {
return 'something else';
}
}
echo animal('cat');
答案 3 :(得分:0)
function animal() {
$animalName = 'tiger';
return $animalName;
}
$animalName=animal();
echo $animalName; //prints tiger
答案 4 :(得分:0)
function animal() {
animalName = 'tiger';
return $animalName;
}
echo animal();