จากที่เคยเขียนเรื่อง จัด code php ตาม PHR 2 และหลังจากใช้ไปก็เจอปัญหาจึงเขียนเรื่อง phpfmt : PHP 70 or newer is required. จนเจอวิธีแก้ปัญหาจริงๆ

สาเหตุของปัญหาคือ phpfmt มันใช้ PHP 7 ในการจัดรูปแบบแต่ว่า project ที่ทำมีความจำเป็นต้องใช้ PHP 5.6 โดยตัว php-fmt ได้เตรียมทางออกไว้ให้แล้วแต่เพราะว่าไม่ได้หารีบเลยแก้แบบด่วนๆไปก่อน

  1. ไปที่ PHP Downloads โหลด php 7 มาติดตั้ง โดยผมเก็บไว้ที่ C:\php7
  2. เปิด sublime ไปที่ Preference > package settings > phpfmt > Settings – Default จะมีไฟล์ถูกเปิดขึ้นมาก แก้ php_bin ตามตัวอย่าง
    [code language=”text” title=”%APPDATA%\Sublime Text 3\Packages\phpfmt\phpfmt.sublime-settings”]
    {
    "option": "value",
    "php_bin":"C:/php7/php.exe",
    "version": 4
    }
    [/code]

    แค่นี้สามารถใช้ phpfmt จัด code ให้ได้โดยที่ไม่ต้องเปลี่ยนไปใช้ พีเอชพี 7 ได้แล้ว อาจจะปรับแต่งการจัด code ได้โดยไปที่ Preference > package settings > phpfmt > Settings – User แก้ไฟล์ตามตัวอย่าง
    [code language=”text” title=”%APPDATA%\Sublime Text 3\Packages\User\phpfmt.sublime-settings”]
    {
    "autocomplete": true,
    "format_on_save": true,
    "psr1": true,
    "psr2": true,
    "version": 1
    }
    [/code]