Tôi đang cài đặt khung công tác Symfony2 lần đầu tiên và màn hình cấu hình web cho biết tắt các thẻ tắt php. Có lý do nào cho điều này ngoài các đối số trong xung đột với xml hoặc máy chủ không tương thích? Bất kỳ vấn đề cụ thể cho Symfony?Tại sao Symfony khuyên bạn nên tắt php_short_tags
Trả lời
IMHO, vui lòng kích hoạt short_open_tag nếu bạn thích và an toàn để bỏ qua cảnh báo này do Symfony phát hành. Heck, tôi muốn ủng hộ việc xóa séc hoàn toàn.
Hai vấn đề có thể bạn trích dẫn là các vấn đề duy nhất mà bạn có thể gặp phải khi sử dụng các thẻ mở ngắn, nhưng thực tế điều này chưa bao giờ là vấn đề đối với tôi trong 10 năm phát triển các ứng dụng PHP. Ngay cả trong ứng dụng XML nặng, rất ít khi bạn có một tiêu đề XML được phân tích cú pháp bằng PHP ở nhiều vị trí, và trong vài trường hợp, vấn đề có thể dễ dàng bị phá vỡ, ví dụ như tự động lặp lại tiêu đề XML. Trong giai đoạn hậu XHTML này, bạn càng khó có thể phát triển bất kỳ ứng dụng web nào có tiêu đề XML trong một khuôn mẫu PHP. Một đối số tranh luận để bắt đầu.
Theo như cấu hình máy chủ, ngay cả chia sẻ webhosting trung bình cũng cho phép cấu hình PHP được sửa đổi trong ngày này, và cài đặt này thậm chí có thể được đặt ở thời gian chạy ở khả năng từ xa mà bạn không thể. Và ai đang triển khai các ứng dụng Symfony cho một shared hosting?
Thẻ mở ngắn cần một số yêu thương và chúng đang nhận được một số trong PHP 5.4, trong đó cú pháp echo (<?= ?>
) sẽ được bật bất kể cài đặt short_open_tag. Ngoài ra, mặc dù những gì một số có thể yêu cầu, các thẻ ngắn không có cách nào là một tính năng PHP không được chấp nhận nữa và vẫn ở đây.
Nếu bạn sử dụng mẫu PHP và thích cú pháp thẻ ngắn hơn, hãy sử dụng nó!
AFAIK, không có gì cụ thể trong Symfony 1 hoặc 2 sẽ bị hỏng nếu bạn sử dụng các thẻ ngắn, nhưng nói từ kinh nghiệm cá nhân, chúng không đáng với số lượng đánh máy nhỏ mà chúng tiết kiệm cho bạn. Bạn đề cập đến hai khiếu nại hợp lệ - xung đột XML và sự không tương thích của máy chủ. Đó là lý do đủ để không sử dụng chúng. Di chuyển các dự án từ máy chủ này sang máy chủ khác và phải thay thế các thẻ ngắn là một sự lãng phí thời gian gây phiền nhiễu :)
Nói chung, đó là không bao giờ ý tưởng hay là sử dụng short_tags
chủ yếu do không tương thích với máy chủ.
máy chủ không tương thích
Không phải mọi máy chủ PHP đã short_tags
kích hoạt. Vì vậy, nếu bạn sử dụng các thẻ ngắn ở bất kỳ đâu trong dự án và một ngày nào đó trong tương lai, nó sẽ xảy ra trên máy chủ có các thẻ ngắn bị vô hiệu hóa, trang web của bạn hiện đã bị hỏng. Bạn phải đi qua mã của bạn và tìm/thay thế hoặc kích hoạt các thẻ ngắn trên máy chủ, mà bạn có thể không có thẩm quyền để làm anyways.
Symfony
Symfony làm cho một số thực hành tốt nhất gợi ý. Chúng không nhất thiết là những thứ sẽ tạo ra hoặc phá vỡ sự phát triển bằng cách sử dụng Symfony, nhưng chúng là những thực hành tốt mà nhiều nhà phát triển chuyên nghiệp theo dõi. Không sử dụng short_tags
là một điều tốt để đưa vào thực tế.
Dù sao, tất cả các thẻ ngắn thực sự là giúp bạn không phải nhập thêm một vài ký tự nữa.Nếu bạn thực sự quan tâm đến việc nhập các ký tự thừa, bạn thực sự nên sử dụng IDE hoặc Trình chỉnh sửa văn bản hỗ trợ các đoạn mã, như Sublime Text.
Tôi chỉ cảm thấy nó làm cho mẫu php trông sạch hơn nhiều so với việc phải sử dụng Php echo ''?>. Tại sao không cố gắng tiến lên phía trước với cải thiện php hơn là cản trở nó cho các vấn đề nhỏ có thể dễ dàng được giải quyết. – dardub
Vấn đề có thể không dễ dàng thay đổi sâu trong mã PHP như bạn nghĩ. –
Tôi có nghĩa là các biến chứng bạn đề cập đến như khả năng tương thích máy chủ thường có thể dễ dàng được giải quyết bằng cách chỉnh sửa php.ini. – dardub
- 1. Tại sao Google khuyên bạn nên sao chép thư viện vào cây của bạn?
- 2. Tại sao loggers khuyên bạn nên sử dụng một logger cho mỗi lớp?
- 3. tại sao tài liệu gcm khuyên bạn nên hủy đăng ký cập nhật ứng dụng?
- 4. Tại sao bạn nên khóa luồng?
- 5. Tại sao Google khuyên bạn nên đặt mã Không đồng bộ Analytics * sau * tập lệnh trong <head>?
- 6. Tại sao Apple khuyên bạn nên sử dụng dispatch_once để triển khai mẫu đơn lẻ trong ARC?
- 7. Tại sao Microsoft khuyên bạn nên bỏ qua việc thực hiện toán tử bình đẳng cho các kiểu tham chiếu?
- 8. Tại sao Apple khuyên bạn nên tạo các bộ điều hướng chuyển đổi theo phương thức lập trình?
- 9. Tại sao mọi người liên tục khuyên bạn nên sử dụng appConfig thay vì sử dụng tệp Cài đặt? (.NET)
- 10. Chọn Zend OR Symfony? Và tại sao?
- 11. Tại sao tính năng kiểm tra của Chrome khuyên tôi nên giảm thiểu kích thước cookie?
- 12. Bạn có thể viết tắt tên danh sách? Tại sao?
- 13. Tại sao bạn nên xác thực biểu mẫu bằng javascript?
- 14. Tại sao bạn nên ngăn lớp học bị phân lớp?
- 15. Bí danh biến C + + - chính xác là gì và tại sao tốt hơn nên tắt nếu tắt?
- 16. Phiên bản trang web dành cho iPhone, khuyên bạn nên làm việc trong px hoặc bằng%?
- 17. Tại sao tắt tiêu đề trong curl?
- 18. Xcode: Tôi có nên tắt các biểu tượng gỡ lỗi trong khi sao chép không?
- 19. Tắt thoát trong Symfony 2/twig
- 20. Tại sao tôi nên học haskell?
- 21. Tại sao tôi nên sử dụng Socket.io?
- 22. Tại sao nên sử dụng Sự kiện?
- 23. Tại sao bạn sử dụng umask?
- 24. Tại sao một Comparator nên thực hiện Serializable?
- 25. (Tại sao) tôi nên sử dụng obfuscation?
- 26. Tại sao Microsoft khuyên các trường chỉ đọc với các giá trị có thể thay đổi?
- 27. Tại sao Celery không tắt sạch?
- 28. Tại sao Symfony 1.x ủng hộ quy ước trên cấu hình nhưng Symfony 2.x ngược lại?
- 29. Bạn sử dụng RDBMS nào với Django và tại sao?
- 30. Trong Flash Player 10 với Vectors, tại sao bạn nên sử dụng Mảng nữa?
xung đột bạn đang nói đến là gì? –
Sau khi chuyển sang trang tiếp theo của phần giới thiệu, tôi nhận ra rằng symfony sử dụng hệ thống templating riêng của nó. Vì vậy, tôi đoán bằng cách sử dụng thẻ php ngắn không thực sự được sử dụng anyway? Chính xác? – dardub
Tôi đoán động cơ mẫu cành là tùy chọn. – dardub