함수에서 변수를 반향하는 방법은 무엇입니까? 이것은 예제 코드입니다.함수에서 변수를 반향하는 방법
function test() { $foo = 'foo'; //the variable } test(); //executing the function echo $foo; // no results in printing it out
함수에서 변수를 반향하는 방법은 무엇입니까? 이것은 예제 코드입니다.함수에서 변수를 반향하는 방법
function test() { $foo = 'foo'; //the variable } test(); //executing the function echo $foo; // no results in printing it out
질문에 대한 즉각적인 대답은 함수의 범위에 $foo
를 가져올 것 : PHP here의 변수 범위에
function test() {
global $foo;
$foo = 'foo'; //the variable
}
더.
그러나 이것은 대부분의 경우에 좋지 않습니다. 일반적으로 을 함수에서 원하는 값으로을 반환하고이 함수를 호출 할 때 $foo
에 할당하려고합니다. 그것은 단지 기능의 범위에 존재하기 때문에
function test()
{
return "foo";
}
$foo = test();
echo $foo; // outputs "foo"
변수 수명 범위는 함수 내에 있습니다. 함수 외부에서 액세스하려면 전역으로 선언해야합니다.
function test() {
$foo = 'foo'; //the variable
echo $foo;
}
test(); //executing the function
을하거나 글로벌 제안 선언
당신은 할 수 있습니다. 그렇게하려면, 여기 설명서를 보라 : http://php.net/manual/en/language.variables.scope.php
function test() {
return 'foo'; //the variable
}
$foo = test(); //executing the function
echo $foo;
귀하의 $foo
변수는 함수의 외부에 표시되지 않습니다.
에코 기능 자체에서 :
function test() {
$foo = 'foo';
echo $foo;
}
에코 리턴 결과 :
function test() {
$foo = 'foo'; //the variable
return $foo;
}
echo test(); //executing the function
는 개인적 변수 글로벌
$foo = '';
function test() {
Global $foo;
$foo = 'foo'; //the variable
}
test(); //executing the function
echo $foo;
확인 당신은 여러 가지 방법으로 원하는 것을 할 수 있습니다 나는 할것이다.
function test(&$foo)
{
$foo = 'bar';
}
test($foobar);
echo $foobar;
함수 섹션 "글로벌"입력 변수가되도록 변수를 변경 직접 함수 영역 밖에서 하나를 변경한다하는 기능을 말한다 매개 변수 내 앰퍼샌드!
가독성을 위해 test()를 호출하기 전에 $ foobar가 정의되어있는 한 ... PHP가 $ foobar를 즉석에서 생성 함에도 불구하고 –
$ foobar는 PHP가 범위 밖에서 작성해야합니다! 사용자 응용 프로그램을 만들지 않고도 내 예제가 바깥 범위 안에 $ foobar를 만들어서 잘 작동해야합니다! - http://www.php.net/manual/en/language.references.pass.php – RobertPitt
변수를 인쇄하려고합니까? 왜 함수 안에 인쇄하지 않습니까? 그것을 반환하려고합니까? 아니면 반환 후 인쇄하려고합니까? – MJB
함수 앞에 선언되지 않은 변수는 인쇄 할 수 없습니다. – user29964