Dấu ngoặc nhọn PHP xuống dòng

Trang này đặt mỗi dấu ngoặc nhọn mở của PHP trên một dòng riêng, với dấu ngoặc nhọn đóng được căn thẳng hàng với nó. Đây là kiểu thường được gọi là Allman. Dán một đoạn mã có dấu ngoặc nhọn ở cuối dòng hoặc nằm hết trên một dòng, và các khối sẽ được căn thẳng hàng theo chiều dọc.

Cách đặt dấu ngoặc nhọn xuống dòng

  1. 1

    Dán đoạn mã

    Thêm mã vào ô mã PHP, với dấu ngoặc nhọn ở vị trí hiện tại của chúng.

  2. 2

    Chọn thụt lề

    Chọn 2 hoặc 4 khoảng trắng cho nội dung của mỗi khối.

  3. 3

    Tiếp tục

    Mở trang kết quả để xem mã đã được định dạng lại.

  4. 4

    Sao chép mã

    Xác nhận các khối đã thẳng hàng, sau đó sao chép.

Cách đặt dấu ngoặc nhọn trong công cụ này

Công cụ chỉ có một bố cục và không có tùy chọn nào khác: mỗi { bắt đầu một dòng riêng, mỗi } nằm trên dòng riêng, và nội dung bên trong được thụt lề một cấp. Vì vậy else và catch luôn bắt đầu ở dòng mới sau dấu ngoặc nhọn đóng.

Đầu vào có dấu ngoặc nhọn ở cuối dòng:

<?php if ($age >= 18) { echo "adult"; } else { echo "minor"; }

Kết quả:

<?php if ($age >= 18)
{
    echo "adult";
}
else
{
    echo "minor";
}

Nên dùng kiểu nào?

Các hướng dẫn phong cách PHP phổ biến đặt dấu ngoặc nhọn mở của lớp hoặc phương thức trên dòng riêng, trong khi các cấu trúc điều khiển như if và foreach thường giữ dấu ngoặc nhọn trên cùng dòng với câu lệnh. Công cụ này áp dụng bố cục xuống dòng ở mọi nơi. Điều đó đúng với lớp và phương thức, và là một lựa chọn có chủ đích với phần còn lại. Nếu dự án của bạn theo quy ước hỗn hợp, bạn cần đưa dấu ngoặc nhọn của các cấu trúc điều khiển trở lại dòng cũ bằng tay.

Ghi chú thực tế

  • Các khối lồng nhau vẫn tiếp tục lùi vào, nên một vòng lặp trong phương thức nằm trong lớp sẽ ở sâu ba cấp.
  • Dấu ngoặc nhọn đóng luôn được theo sau bởi một ngắt dòng, nên } và mã phía sau nó không bao giờ chung một dòng.
  • Dấu ngoặc nhọn trong chú thích và trong văn bản giống chuỗi như heredoc được tính như dấu ngoặc nhọn thật và có thể làm lệch bố cục.
  • Không có cài đặt nào để giữ dấu ngoặc nhọn mở trên dòng của câu lệnh. Trang này không thể tạo ra kiểu đó.

Ví dụ với lớp

Đầu vào:

<?php class User{private $name;public function getName(){return $this->name;}}

Kết quả với 4 khoảng trắng:

<?php class User
{
    private $name;
    public function getName()
    {
        return $this->name;
    }
}

Dấu ngoặc nhọn của lớp và của phương thức đều đứng riêng, và phần thân phương thức được thụt lề sâu hơn một cấp so với thuộc tính phía trên. Dấu ngoặc nhọn đóng thẳng hàng với dòng đã mở nó, nên bạn có thể ghép các khối bằng mắt.

Kết hợp với phong cách riêng của bạn

Nếu chỉ một số khối cần thay đổi, hãy chỉ dán những khối đó. Kết quả dễ đưa lại vào tệp bằng cách sao chép và dán, vì mỗi khối kết thúc ở dấu ngoặc nhọn đóng của chính nó. Đừng dán một đoạn bắt đầu hoặc kết thúc giữa chừng một khối, vì độ sâu thụt lề bắt đầu từ không và sẽ không khớp với tệp xung quanh.

Câu hỏi thường gặp

Không. Công cụ luôn chuyển dấu ngoặc nhọn mở xuống dòng riêng.

Lớp và phương thức thường dùng kiểu này. Các cấu trúc điều khiển như if và foreach thường giữ dấu ngoặc nhọn trên cùng dòng, điều mà công cụ này không làm.

Mỗi dấu ngoặc nhọn đóng kết thúc dòng của nó, nên bất cứ thứ gì theo sau sẽ bắt đầu ở dòng kế tiếp.

Công cụ xử lý mọi khối có dấu ngoặc nhọn theo cùng cách, nên các khối đó cũng được thụt lề. Hãy đọc kết quả để xác nhận các nhãn case trông đúng.

Công cụ liên quan

Công cụ này có phiên bản bằng các ngôn ngữ khác

Hướng dẫn và trường hợp sử dụng