Nasıl bir dolar işareti olan bir PHP nesne özniteliği erişebilirim?

5 Cevap php

Ben bunu bir dolar ($) işareti olan bir özelliği ile bir PHP nesne var.

Nasıl bu niteliğin içeriğe erişmek mi?

Örnek:

echo $object->variable; // Ok

echo $object->variable$WithDollar; // Syntax error :-(

5 Cevap

  1. Ile variable variables,

    $myVar = 'variable$WithDollar';
    echo $object->$myVar;
    
  2. Kıvırcık parantez ile:

    echo $object->{'variable$WithDollar'};
    

Cevaplarınız için teşekkürler, ben sadece yolu ben amaçlanan bunu nasıl öğrendim:

echo $object->{'variable$WithDollar'}; // works !

Ben daha önce mümkün olan her kombinasyonu denedim emindim.

Ben size anında değişken isimleri ile özelliklerine erişmek istediğiniz varsayalım. Bunun için, deneyin

echo $object->{"variable".$yourVariable}

Sen yok.

Dolar işareti PHP özel bir önemi vardır. Eğer bu yapıyor olmalıdır ASLA sınıf / nesne özelliklerini çözümleyecek içinde değişken değişimi atlamak mümkün olmasına rağmen.

Değişmez bir '$' ile değişkenleri bildirmek için çalışmayın.

Eğer Someoneelse en karmaşa ile başa yaşıyorsanız - Önce onlar sonra gidip onların parmaklarını kesmek dolar kaldırmak için yazdı kodunu düzeltmek.

C.

Ayrıca yöntem inşa izin ve değişkenler tarafından inşa veya özel karakterler içeren edilebilir öznitelik adları yansımasıdır yöntemler vardır. Sen ReflectionClass :: getProperty (string $ isim) yöntemini kullanabilirsiniz.

$object->getProperty('variable$WithDollar');