SORU
19 Mayıs 2011, PERŞEMBE


Kullanma sınıfı özel bir fonksiyon ile php usort

bir işlev için sorun usort kullanarak çok karmaşık değildir

Bu doğrusal benim kod daha önce söylemeliydim

function merchantSort($a,$b){
    return ....// stuff;
}

$array = array('..','..','..');

sıralama için sadece yaparım

usort($array,"merchantSort");

Şimdi kod yükseltme ve tüm genel işlevleri kaldırmak ve uygun onların yerine koyuyoruz. Şimdi tüm kod sınıf ve usort fonksiyonu basit bir işlevi yerine nesne yöntemi parametre ile bir dizi sıralamak için nasıl kullanılacağını çözemedim

class ClassName {
   ...

   private function merchantSort($a,$b) {
       return ...// the sort
   }

   public function doSomeWork() {
   ...
       $array = $this->someThingThatReturnAnArray();
       usort($array,'$this->merchantSort'); // ??? this is the part i can't figure out
   ...

   }
}

Soru nasıl usort içinde bir nesne yöntemi çağrısı yapmak() işlevi

CEVAP
19 Mayıs 2011, PERŞEMBE


  1. manuel Sayfa http://www.php.net/usort açın
  2. $value_compare_func tipi callable
  3. http://php.net/manual/en/language.types.callable.php ulaşmak bağlantılı anahtar kelime üzerine tıklayın
  4. sözdizimi array($this, 'merchantSort')

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • HTC

    HTC

    12 Ocak 2006
  • LimeFire

    LimeFire

    2 ŞUBAT 2012
  • waterfairy17

    waterfairy17

    9 Aralık 2007