Ancak ben çiftleri, yani farklı / benzersiz olmak içermezler sonuçlarını istiyorum, '$' ile başlayan bir komut tüm değişkenleri maç için aşağıdaki kodu kullanıyorum:
preg_match_all('/\$[a-zA-Z0-9]+/', $code, $variables);
Herhangi bir tavsiye?
array_unique
a> çıktı diziden çiftleri kaldırmak için kullanın:
preg_match_all('/\$[a-zA-Z0-9]+/', $code, $variables);
$variables = array_unique($variables[0]);
Ama o PHP ayrıştırmak çalışıyorum umarım. Kullan token_get_all
a> verilen PHP kodu belirteçleri almak için.
Regex ile bunu yapmayın. Eğer tüm bunları toplanan sonra $variables
, sadece normal bir programlama mantığı / işlemleri kullanarak bunları filtre. Örneğin, söz konusu bamya array_unique
olarak kullanılması.
Ayrıca, regex bu durumda ne yapacağız:
// this is $not a var
foo('and this $var should also not appear!');
/* and what about $this one? */
Her üç "değişken" ($not
, $var
ve $this
) değişkenleri değil, ama regex ile uyumlu olacaktır.