SORU
14 EYLÜL 2009, PAZARTESİ


Nasıl PHP bir işlev için bağımsız değişken sayısı geçirmek için

Ben bir PHP işlevi alır bir değişken sayıda bağımsız değişken (kullanarak func_num_args() func_get_args()), ama bu sayıda bağımsız değişken olarak geçmek istiyorum işlevi bağlı uzunlukta bir dizi. Bir yolu varArabağımsız değişken bir dizi ile bir PHP fonksiyonu?

CEVAP
14 EYLÜL 2009, PAZARTESİ


Eğer bir dizi bağımsız değişken varsa, call_user_func_array işlevi ile ilgilenebilirsiniz.

Eğer sayıda bağımsız değişken geçmek istiyorum bağlıdır uzunlukta bir dizi, muhtemelen anlamına gelir paketi içine bir dizi kendilerini ve kullanan biri için ikinci parametre call_user_func_array.

Geçmesi dizinin öğelerini ayrı parametre olarak bir işlev tarafından kabul edilecek.


Eğer varsa örneğin, bu fonksiyonu

function test() {
  var_dump(func_num_args());
  var_dump(func_get_args());
}

Böyle bir diziye parametreleri paketi olabilir

$params = array(
  10,
  'glop',
  'test',
);

Ve, o zaman, bu işlev çağrısı :

call_user_func_array('test', $params);

Bu kod çıktı :

int 3

array
  0 => int 10
  1 => string 'glop' (length=4)
  2 => string 'test' (length=4)

yani, 3 parametreleri ; tam olarak cetvel gibi işlevi bu şekilde deniyordu :

test(10, 'glop', 'test');

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ICON

    ICON

    19 EKİM 2011
  • Mr. H

    Mr. H

    1 Temmuz 2012
  • The Amazing Atheist

    The Amazing

    20 Kasım 2006