2014-07-14 34 views
6

'daki istisnaları içeren PSR-2'yi kullanın CodeSniffer için bir kod geliştiriciyi bir grup geliştirici arasında zorlamak için bir kural seti oluşturmaya çalışıyorum ancak bazı sorunların üstesinden geliyorum.PHP CodeSniffer

İki şeyle ilgili olarak PSR-2'ye uymak istiyoruz. Sınıf bildirimlerinin, aynı satırdaki açık ayracı ve işlevleri için aynı olmasını istiyoruz. İlk düzeltmeyi başardım ama işlevler için aynı satırda açık ayraç hatası sadece gitmeyecek.

Onu Jenerik.Functions.OpeningFunctionBrace.BsdAllman ve hata BraceOnSameLine sniff'e kadar izledim ancak bu hariç tutmak kural kümemde hiçbir şey yapmaz.

<?xml version="1.0"?> 
<ruleset name="OrgXYZ"> 
    <description>The coding standard for Organization XYZ.</description> 
    <rule ref="PSR2"> 
     <exclude name="PSR2.Classes.ClassDeclaration.OpenBraceNewLine"/> 
     <exclude name="Generic.Functions.OpeningFunctionBraceBsdAllman.BraceOnSameLine"/> 
    </rule> 
</ruleset> 

Ve rapordan kaldırmak çalışıyorum mesajı şudur:

Benim ruleset şöyle

15 | ERROR | Opening brace should be on a new line 

Bu kendime ait bir ruleset benim ilk girişimi ve ben gerçekten burada bir kayıp yaşıyorum. Ben googled, araştırdı ve göründüğü her şeyi denedim.

+0

Eğer bayılmadım kullanmak için komut satırında sizin kural setleri dahil ediyor musunuz senin demo olarak sonuçları proje kök phpcs.xml içinde etiketleri hariç ekle? –

+0

Evet. Ancak çözümü buldum. Aşağıya bakın :-) – FighterHayabusa

cevap

6

Sorun bulundu. PSR2 kural kümesinde neler olup bittiğini kaybettim ve yanlış şeyleri dışladım. bu Çözmedim ekleme: ayıklama codesniffer için

<exclude name="Squiz.Functions.MultiLineFunctionDeclaration.BraceOnSameLine"/> 
+0

Bu sniff'i hariç tutmanın sadece açılış çizgisini aynı satıra yerleştirme hatasını bastıracağını unutmamak önemlidir. ** **, otomatik olarak, açılış ayracını bir _new_ satırına yerleştirmenin bir hata olarak işaretlendiğini garanti eder. Bunu yapan bir sniff bulamadım ... – beporter

+1

Generic.Functions.OpeningFunctionBraceKernighanRitchie.BraceOnNewLine yeni satır açma desteğini bir hata olarak işaretleyecektir. – cmerriman

1

yolu, çağrılan sniffs açığa -s bayrağı kullanmaktır. Örneğin

phpcs -s ugly.php 

böyle