Ne bir işareti ile bir PHP işlevini başlatmak demek?

2 Cevap php

Ben onu bu kodu ile Facebook kitaplığı kullanıyorum:

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

Ve ne yapar fonksiyon tanımının başında demek ve nasıl (basit bir örnek) böyle bir kütüphane kullanma hakkında gitmek yok

2 Cevap

Bir işlev adından önce bir ve işareti işlevi yerine değeri bir değişkene bir başvuru döndürmek anlamına gelir.

Returning by reference is useful when you want to use a function to find to which variable a reference should be bound. Do not use return-by-reference to increase performance. The engine will automatically optimize this on its own. Only return references when you have a valid technical reason to do so.

Bkz Returning References.

Daha önce de belirttiğimiz gibi, bir başvuru dönen bulunuyor. PHP4, nesneleri sadece başka bir değer gibi, değeri ile ayrıldı. Bu son derece unintuitive ve çoğu diğer diller nasıl çalıştığını aykırıdır. Soruna olsun, referanslar nesnelere işaret değişkenler için kullanılmıştır. PHP5'ta, referanslar çok nadiren kullanılır. Ben bu eski kod veya PHP4 ile geriye dönük uyumluluğu korumak için çalışıyoruz kodu olduğunu tahmin ediyorum.