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

  • humanHardDrive

    humanHardDri

    16 Mart 2011
  • KSI

    KSI

    25 Temmuz 2009
  • Phandroid

    Phandroid

    26 Ocak 2009