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

  • Helen Bradley

    Helen Bradle

    4 Mart 2008
  • LearnKey

    LearnKey

    19 AĞUSTOS 2008
  • warningthepeople

    warningthepe

    21 EYLÜL 2011