2010-02-15 28 views
8

Trong khi tôi đang phát triển với Magento, tôi phát hiện ra rằng tôi không cần phải đặt thẻ kết thúc php (?>) Nếu tôi không sử dụng HTML bên dưới mã PHP. Có an toàn không và tại sao chúng ta không đặt thẻ kết thúc ?? Nó khá hữu ích??Bỏ qua thẻ kết thúc PHP

Trả lời

8

The official stance:

Lưu ý: Các thẻ đóng của một khối PHP ở phần cuối của một tập tin là không bắt buộc, và trong một số trường hợp bỏ qua nó là hữu ích khi sử dụng bao gồm() hoặc require(), vì vậy không mong muốn khoảng trắng sẽ không xảy ra ở cuối tệp và bạn vẫn có thể thêm tiêu đề vào phản hồi sau. Nó cũng rất tiện dụng nếu bạn sử dụng bộ đệm đầu ra, và không muốn nhìn thấy khoảng trống không mong muốn được thêm vào ở cuối các phần được tạo ra bởi các tệp được bao gồm.

2

Có, điều này rất hữu ích vì bạn không thể quên các ký tự lạ như \ n sau khi đóng thẻ (điều này có thể ngăn không cho gửi cookie, v.v.). Trong khung công tác Zend, chúng không sử dụng các thẻ đóng (cũng như một mã dự án).

6

Điều này rất hữu ích khi tạo tệp/tệp lớp, vì rất dễ thêm khoảng trắng hoặc dòng mới vào cuối tệp, điều này có thể làm hỏng đầu ra khi xuất dữ liệu đầu ra header(). Vì PHP xử lý một EOF giống như việc đóng ?> trong một tệp không có nguy hiểm khi dựa vào EOF.

Các vấn đề liên quan