PHP コードをインデントする

インデントがない、またはずれてしまった PHP コードを貼り付けると、入れ子になったすべてのブロックを整え直します。階層ごとに 2 スペースか 4 スペースを選べます。インデントは波かっこに従うため、関数、クラス、ループ、条件文はそれぞれ 1 階層ずつ字下げされます。

PHP コードをインデントする方法

  1. 1

    コードを貼り付ける

    スニペットを PHP コードの欄に追加します。既存の空白は作り直されるため、気にしなくて構いません。

  2. 2

    インデントの設定を選ぶ

    出力をコンパクトにするなら 2、一般的な PHP の幅なら 4 を選びます。

  3. 3

    次へ進む

    主要なボタンを使うと、インデントされたコードが表示されます。

  4. 4

    コピーする

    入れ子が正しいことを確認してから、結果をファイルにコピーします。

インデントの計算方法

ツールは深さのカウンターを持っています。開き波かっこごとに 1 階層増え、閉じ波かっこごとに 1 階層減ります。各行には、選んだスペース数に現在の深さを掛けた分の空白が入ります。インデントは常にスペースで、タブは使いません。

同じ関数を各設定で整形した例です。入力は function total($items){$sum=0;foreach($items as $item){$sum+=$item["price"];}return $sum;} です。

4 スペースの場合:

function total($items)
{
    $sum=0;
    foreach($items as $item)
    {
        $sum+=$item["price"];
    }
    return $sum;
}

2 スペースの場合:

function total($items)
{
  $sum=0;
  foreach($items as $item)
  {
    $sum+=$item["price"];
  }
  return $sum;
}

2 スペースか 4 スペースか

PHP のプロジェクトでは 4 スペースが一般的な慣習で、多くのスタイルガイドもこれを求めています。2 スペースにすると深くネストしたコードが細くなるため、小さなチケットの入力欄やチャットメッセージに貼り付けるときに便利です。チームで使っている方に合わせてください。

知っておくとよいこと

  • 入力にあるタブは保持されません。波かっこやセミコロンの周りの空白が作り直されるためです。
  • インデントは波かっこにだけ従います。長い配列のように丸かっこの中で複数行にわたるコードは、それ以上インデントされません。
  • コメントや heredoc の中の波かっこも数えられるため、その後ろの深さがずれる場合があります。
  • 対応していない波かっこはエラーとして報告されません。閉じ波かっこが足りなくなると、深さはゼロで止まり、それ以降の行はインデントされません。

インデントが失われたコードの修正

インデントは、フォーム、メール、チャットツール、ログファイルを経由すると消えることがよくあります。ここに貼り付ければ、波かっこを基に構造を作り直すので、各行を手作業でそろえ直す必要はありません。メソッドとその本体が異なる深さにあるクラスや、いくつもの入れ子のループや条件文がある長い関数で特に役立ちます。

結果を確認する

整形の後は左端を見てください。閉じ波かっこは、そのブロックを開いた行と縦にそろっているはずです。最後の波かっこが字下げされている場合や、ブロックの後のコードが深く入り込んでいる場合は、入力の波かっこが不足または過剰です。まずそれを直してから、もう一度ツールを実行してください。

よくある質問

いいえ。インデントの設定は 2 スペースか 4 スペースです。タブが必要な場合は、後からエディタでスペースをタブに変換してください。

深さを変えるのは波かっこだけです。角かっこと丸かっこは階層を増やしません。

何も警告されません。ツールは最後まで深いインデントを保つだけなので、ずれた結果は波かっこを確認するヒントになります。

はい。波かっこやセミコロンの周りの改行は作り直され、空行は削除されます。

関連ツール

このツールは他の言語でも利用できます

使い方ガイドと活用例