Cấu hình php cs-fixer

Thay vì sử dụng các tùy chọn dòng lệnh để tùy chỉnh các quy tắc và bộ quy tắc, bạn có thể lưu cấu hình dự án trong tệp .php-cs-fixer.dist.php trong thư mục gốc của dự án của bạn. Tệp phải trả về phiên bản PhpCsFixer\ConfigInterface cho phép bạn định cấu hình quy tắc, tệp và thư mục cần được phân tích. Bạn cũng có thể tạo tệp .php-cs-fixer.php, đây là cấu hình cục bộ sẽ được sử dụng thay cho cấu hình dự án. Bạn nên thêm tệp đó vào tệp .gitignore của mình. Với tùy chọn --config, bạn có thể chỉ định đường dẫn đến tệp .php-cs-fixer.php

Ví dụ dưới đây sẽ thêm hai quy tắc vào danh sách mặc định của bộ quy tắc PSR12

exclude('somedir')
    ->notPath('src/Symfony/Component/Translation/Tests/fixtures/resources.php')
    ->in(__DIR__)
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@PSR12' => true,
        'strict_param' => true,
        'array_syntax' => ['syntax' => 'short'],
    ])
    ->setFinder($finder)
;

GHI CHÚ.

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
0 sẽ chỉ hoạt động đối với các thư mục, vì vậy nếu bạn cần loại trừ tệp, hãy thử
in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
1. Cả hai phương thức
in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
0 và
in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
1 chỉ chấp nhận các đường dẫn tương đối với các đường dẫn được xác định bằng phương thức
in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
2

Xem tài liệu trực tuyến Symfony\Finder để biết các phương pháp Finder khác

Bạn cũng có thể sử dụng danh sách loại trừ cho các quy tắc thay vì cách tiếp cận bao gồm được hiển thị ở trên. Ví dụ sau đây cho thấy cách sử dụng tất cả các quy tắc

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
3 trừ quy tắc
in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
4

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;

Bạn có thể muốn sử dụng các khoảng trắng không phải linux trong dự án của mình. Sau đó, bạn cần định cấu hình chúng trong tệp cấu hình của mình

Nếu bạn muốn gặp các vấn đề về quy ước mã và loay hoay tìm một công cụ nào có hiệu quả giúp bạn tự động kiểm tra, tự động sửa các lỗi đó, thì bạn hãy…… lên Google để tìm kiếm giải pháp. Bài viết sau cũng là một gợi ý =))

1. PHPCS PHP_CodeSniffer

Không biết giới thiệu tiếng Việt kiểu gì nữa, thôi thì lấy nguyên mẫu tiếng Tây vậy

PHP_CodeSniffer là một bộ gồm hai tập lệnh PHP; . PHP_CodeSniffer là một công cụ phát triển cần thiết để đảm bảo mã của bạn luôn rõ ràng và nhất quán

1. 1. Cài đặt

Có rất nhiều cách cài đặt PHPCS, bạn có thể sử dụng 2 cách chính

  • Download direct file to run

1

2

3

4

5

6

7

8

9

10

11

12

<span class="nhận xét mã thông báo"<># Download using curl

<span class="chức năng mã thông báo"< . >curl</span> -OL https://squizlabs. github. io/PHP_CodeSniffer/phpcs. dược phẩm>

<span class="chức năng mã thông báo"< . >curl</span> -OL https://squizlabs. github. io/PHP_CodeSniffer/phpcbf. dược phẩm>

 

<span class="nhận xét mã thông báo"<># Or download using wget

<span class="chức năng mã thông báo"< . >wget</span> https://squizlabs. github. io/PHP_CodeSniffer/phpcs. dược phẩm>

<span class="chức năng mã thông báo"< . >wget</span> https://squizlabs. github. io/PHP_CodeSniffer/phpcbf. dược phẩm>

 

<span class="nhận xét mã thông báo"<># Then test the downloaded PHARs

php phpc. phar -h

php phpcbf. phar -h

 

  • Cài đặt qua Composer, bạn có thể cài đặt dưới dạng toàn cầu (toàn hệ thống)

1

2

nhà soạn nhạc toàn cầu yêu cầu <span class="token string">"squizlabs/php_codesniffer=*"</span>

 

Sau đó, hãy chắc chắn rằng thư mục bin của nhà soạn nhạc đã có trong PATH của bạn. Giá trị mặc định của thư mục này là

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
4, nhưng bạn có thể kiểm tra giá trị bạn cần sử dụng bằng lệnh

1

2

nhà soạn nhạc toàn cầu config bin-dir --absolute

 

Đối với bash, file that is. bashrc at home directory from is

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
5, with zsh is file
in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
6

Mình đang dùng

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
7 nên sẽ bổ sung vào file
in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
8

1

2

<span class="chức năng mã thông báo"< . >vi</span> .zshrc

 

Add this lines to nha

1

2

<span class="chức năng mã thông báo"< . >export</span> PATH<span class="token operator">=</span>~/.nhà soạn nhạc/nhà cung cấp/bin . /:<span lớp=">$PATH</span>

 

Sau đó kiểm tra lại bằng

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
9 ra xem chưa

1

2

.. . /nhà/nguyen. van. minhb/. nhà soạn nhạc/nhà cung cấp/bin . /:. . . .

 

1. 2. Use

Để sử dụng, thay vì đơn giản, sử dụng lệnh

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
0 tệp kết hợp, thư mục bạn muốn kiểm tra

1

2

3

4

5

6

7

8

9

<span class="nhận xét mã thông báo"<># Check cú pháp với file

$ phpcs /đường dẫn/to/code/myfile.php

 

<span class="nhận xét mã thông báo"<># Check cú pháp với thư mục

$ phpcs /đường dẫn/to/code-directory

 

<span class="nhận xét mã thông báo"<># Check cú pháp với các tùy chọn config

$ phpcs --tiêu chuẩn<span class="token operator">=</span>PSR2 /path/to/code-directory

 

cấu hình

Bạn hoàn toàn cấu hình các mã kiểm tra tiêu chuẩn mà bạn muốn, chẳng hạn như sử dụng tab hoặc không gian, kiểm tra thư mục nào, bỏ qua tệp nào, tiêu chuẩn nào. Sau khi cài đặt PHPCS, mặc định nó sẽ sử dụng điều kiện PEAR, điều kiện này đã cũ, bạn có thể thay đổi điều kiện này bằng cách sử dụng tiêu chuẩn của công ty Framgia hoặc PRS2

1

2

3

4

5

phpcs --config-đặt default_standard PSR2

 

// Kiểm tra việc thiết lập cấu hình

phpcs --config-hiển thị

 

Cách thay đổi cấu hình như vậy KHÔNG KHUYẾN KHÍCH, thay vào đó bạn nên thiết lập

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
0 cho từng dự án của mình, sử dụng các tệp
in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
2

Cài đặt Framgia PHP Standards

Mã kiểm tra tiêu chuẩn của PHPCS được đặt trong thư mục

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
3. Vì vậy nếu bạn muốn thêm 1 mã kiểm tra tiêu chuẩn, bạn chỉ cần sao chép nó vào thư mục này

1

2

3

4

5

6

7

8

// Phiên bản 2

<span class="chức năng mã thông báo"< . >cd</span> ~/.nhà soạn nhạc/nhà cung cấp/squizlabs/php_codesniffer/CodeSniffer/Standards

<span class="chức năng mã thông báo"< . 2>git</span> clone -b 0.2 <a href= . class="__cf_email__">[email protected]</a>:wataridori/framgia-php . -codesniffer.git Framgia

 

// Phiên bản 3

<span class="chức năng mã thông báo"< . >cd</span> ~/.nhà soạn nhạc/nhà cung cấp/squizlabs/php_codesniffer/src/Standards

<span class="chức năng mã thông báo"< . >git</span> clone <a href="/cdn-cgi/l/email-protection" class="__cf_email__">[email protected]</a>:wataridori/framgia-php . -codesniffer.git Framgia

 

Use

1

2

phpcs <span lớp="token operator">--</span>standard<span class="token operator">=</span>Framgia <span class="token operator">/</span>path<span class="token operator">/</span>to<span class="token operator">/</span>your<span class="token operator">/</span>code

 

Unit đơn giản nhỉ

Cấu hình php cs-fixer
Cấu hình php cs-fixer

1. 3. Tích hợp PHPCS vào Sublime text 3

Công việc tiếp theo là bạn nên tích hợp việc kiểm tra cú pháp này trực tiếp vào trình soạn thảo để tự động phát hiện lỗi, thay vì cột 1 mạch và chạy lại lệnh

in(__DIR__)
    ->exclude('somedir')
;

$config = new PhpCsFixer\Config();
return $config->setRules([
        '@Symfony' => true,
        'full_opening_tag' => false,
    ])
    ->setFinder($finder)
;
0 =))

Bạn cần cài đặt 2 gói trong Sublime Text để được hỗ trợ công việc này

Sublime Linter (gói chả)

SublimeLinter-phpcs (gói con, các phần nhỏ của Linter)

Khởi động lại Sublime Text luôn để tận hưởng chức năng siêu mới này nhé. v (khởi động bằng lệnh mới được chú ý @@)

1

2

3

<span class="chức năng mã thông báo"<>cd</span> project_path

subl <span class="token keyword">.</span>

 

3. Tích hợp PHPCS vào PHPStorm

Để tích hợp kiểm tra phpcs và các tiêu chuẩn vào PHPStorm, bạn cài đặt theo đường dẫn

Tệp => Cài đặt => Trình chỉnh sửa => Kiểm tra => PHP => Xác thực trình thám thính mã PHP (Có thể có trong Công cụ chất lượng)

Sau đó, bạn chọn cài đặt, hiển thị lỗi ở mức cảnh báo hoặc lỗi và chọn tiêu chuẩn mã hóa

Cấu hình php cs-fixer
Cấu hình php cs-fixer

2. Trình sửa lỗi PHPCS

Đây là một công cụ giúp bạn sửa mã theo tiêu chuẩn (của PHPCS chẳng hạn) mà bạn muốn

2. 1. Cài đặt

tại địa phương

Siêu đơn giản, tải cái tệp php-cs-fixer. phar về rồi chạy luôn

Cấu hình php cs-fixer
Cấu hình php cs-fixer

Toàn cầu (thủ công)

Đầu tiên bạn tải nó về

1

2

$ <span class="token function">wget</span> https://cs. giao hưởng. com/download/php-cs-fixer-v2. phar -o php-cs-fix . []( https. //hình ảnh. viblo. á/09a62f3a-64c5-4551-9fdc-a16e49fbfc71. gif )