
เครื่องมือ PHP Coding Standards Fixer (PHP CS Fixer) จะแก้ไขโค้ดของคุณให้เป็นไปตามมาตรฐาน ไม่ว่าคุณต้องการปฏิบัติตามมาตรฐานการเข้ารหัส PHP ตามที่กำหนดไว้ใน PSR-1, PSR-2 ฯลฯ หรือมาตรฐานที่ขับเคลื่อนโดยชุมชนอื่น ๆ เช่น Symfony คุณ ยัง สามารถกำหนดสไตล์ (ของทีม) ของคุณผ่านการกำหนดค่าได้
มันสามารถปรับปรุงโค้ดของคุณให้ทันสมัย (เช่นการแปลงฟังก์ชัน pow เป็นตัวดำเนินการ ** บน PHP 5.6) และ (ไมโคร) ปรับให้เหมาะสม
หากคุณใช้ linter เพื่อระบุปัญหามาตรฐานการเข้ารหัสในโค้ดของคุณอยู่แล้ว คุณจะรู้ว่าการแก้ไขด้วยตนเองนั้นน่าเบื่อ โดยเฉพาะในโปรเจ็กต์ขนาดใหญ่ เครื่องมือนี้ไม่เพียงแต่ตรวจจับพวกมันเท่านั้น แต่ยังแก้ไขมันให้กับคุณด้วย
หมายเหตุ PHP เวอร์ชันใหม่แต่ละเวอร์ชันต้องใช้ความพยายามอย่างมากในการรองรับไวยากรณ์ใหม่ นั่นเป็นเหตุผลว่าทำไม PHP เวอร์ชันล่าสุดจึงอาจยังไม่รองรับ หากคุณต้องการ โปรดพิจารณาสนับสนุนโครงการด้วยวิธีที่สะดวก เช่น การสนับสนุนโค้ดหรือการตรวจสอบ PR ที่มีอยู่ หากต้องการเรียกใช้ PHP CS Fixer ในเวอร์ชันที่ยังไม่รองรับ "คุณต้องรับความเสี่ยงเอง" - ใช้ประโยชน์จาก PHP_CS_FIXER_IGNORE_ENV
วิธีที่แนะนำในการติดตั้ง PHP CS Fixer คือการใช้ Composer ในไฟล์ composer.json เฉพาะในโปรเจ็กต์ของคุณ เช่น ในไดเร็กทอรี tools/php-cs-fixer :
mkdir -p tools/php-cs-fixer
composer require --working-dir=tools/php-cs-fixer friendsofphp/php-cs-fixer หรือใช้ composer.json หลัก :
composer require --dev friendsofphp/php-cs-fixerสำหรับรายละเอียดเพิ่มเติมและวิธีการติดตั้งอื่นๆ โปรดดูคำแนะนำในการติดตั้ง
คุณสามารถใช้อิมเมจ Docker ที่สร้างไว้ล่วงหน้าเพื่อเรียกใช้ php-cs-fixer
docker run -it --rm -v $(pwd):/code ghcr.io/php-cs-fixer/php-cs-fixer:${FIXER_VERSION:-3-php8.3} fix src $FIXER_VERSION ที่ใช้ในตัวอย่างด้านบนคือตัวระบุรุ่นที่คุณต้องการใช้ ซึ่งอิงตามเวอร์ชันของ Fixer และ PHP รวมกัน มีแท็กที่แตกต่างกันสำหรับแต่ละระดับ SemVer ของ Fixer และเวอร์ชัน PHP ที่มีไวยากรณ์ <php-cs-fixer-version>-php<php-version> ตัวอย่างเช่น:
3.57.0-php7.43.57-php8.03-php8.3 สมมติว่าคุณติดตั้ง PHP CS Fixer ตามคำแนะนำข้างต้น คุณสามารถเรียกใช้คำสั่งต่อไปนี้เพื่อแก้ไขไฟล์ PHP ในไดเร็กทอรี src :
tools/php-cs-fixer/vendor/bin/php-cs-fixer fix srcดูการใช้งาน รายการกฎในตัว รายการชุดกฎ และเอกสารประกอบไฟล์การกำหนดค่าสำหรับรายละเอียดเพิ่มเติม
หากคุณต้องการใช้สไตล์โค้ดที่เครื่องมือไม่รองรับ คุณสามารถสร้างกฎที่กำหนดเองได้
มีปลั๊กอินเฉพาะสำหรับ:
PHP CS Fixer ได้รับการปรับปรุงบน GitHub ที่ https://github.com/PHP-CS-Fixer/PHP-CS-Fixer เรายินดีรับรายงานข้อผิดพลาดและแนวคิดเกี่ยวกับคุณลักษณะใหม่ๆ ได้ที่นี่
คุณสามารถติดต่อเราได้ในการสนทนา GitHub เกี่ยวกับโปรเจ็กต์ การกำหนดค่า การปรับปรุงที่เป็นไปได้ แนวคิด และคำถาม กรุณาเยี่ยมชมเราที่นั่น!
เครื่องมือนี้มาพร้อมกับโปรแกรมแก้ไขในตัวจำนวนไม่น้อย แต่ทุกคนก็ยินดีที่จะมีส่วนร่วมมากขึ้น