복붙노트

앰퍼샌드가있는 PHP 함수를 시작한다는 것은 무엇을 의미합니까?

PHP

앰퍼샌드가있는 PHP 함수를 시작한다는 것은 무엇을 의미합니까?

나는이 코드와 함께 페이스 북 라이브러리를 사용하고있다 :

class FacebookRestClient {
...
    public function &users_hasAppPermission($ext_perm, $uid=null) {
        return $this->call_method('facebook.users.hasAppPermission', 
        array('ext_perm' => $ext_perm, 'uid' => $uid));
    }
...
}

함수 정의의 처음에 &는 무엇을 의미합니까? 그리고 이와 같은 라이브러리를 사용하려면 어떻게해야합니까 (간단한 예제에서)

해결법

  1. ==============================

    1.함수 이름 앞에있는 앰퍼샌드는 값 대신 변수에 대한 참조를 반환한다는 것을 의미합니다.

    함수 이름 앞에있는 앰퍼샌드는 값 대신 변수에 대한 참조를 반환한다는 것을 의미합니다.

    참조 반환하기를 참조하십시오.

  2. ==============================

    2.이미 언급 한대로 참조를 반환합니다. PHP 4에서 객체는 다른 값과 마찬가지로 값으로 할당되었습니다. 이것은 매우 직관적이지 않으며 다른 언어가 작동하는 방식과는 정반대입니다.

    이미 언급 한대로 참조를 반환합니다. PHP 4에서 객체는 다른 값과 마찬가지로 값으로 할당되었습니다. 이것은 매우 직관적이지 않으며 다른 언어가 작동하는 방식과는 정반대입니다.

    이 문제를 해결하기 위해 객체를 가리키는 변수에 대한 참조가 사용되었습니다. PHP 5에서는 참조가 거의 사용되지 않습니다. PHP 4와의 하위 호환성을 보존하려고 시도하는 레거시 코드 또는 코드라고 생각합니다.

  3. from https://stackoverflow.com/questions/1676897/what-does-it-mean-to-start-a-php-function-with-an-ampersand by cc-by-sa and MIT license