2009-06-17 44 views
12

Bu PHP kodunu göz önünde bulundurun:PHP'de "&" ne anlama geliyor?

call_user_func(array(&$this, 'method_name'), $args); 

İşlevleri tanımlarken başvuru kaynağı anlamına geldiğini biliyorum, ancak bir işlevi çağırırken mi?

cevap

0

Bu, başvuru kaynağıdır. Passing By Reference docs sayfasından

+2

Artık PHP 5'ten itibaren geçerli olmayabileceğimi düşünüyor muyum? –

+0

İşlevleri tanımlarken başvuru kaynağı anlamına geldiğini biliyorum, ancak bir işlevi çağırırken mi? – omg

+0

@Sanırım, kullanımdan kaldırılmıştır. – alex

7

: işlev değişkeni değiştirebilmesi için bir işleve referans bir değişken geçirebilirsiniz

. şöyle sözdizimi:

<?php 
function foo(&$var) 
{ 
    $var++; 
} 

$a=5; 
foo($a); 
// $a is 6 here 
?> 

sen "call-time pass-by-reference" kullanımdan kaldırıldı belirten bir uyarı alacaksınız PHP son sürümlerinde ... ne zaman seni &'u foo içinde kullanın (& $ a);