2013-08-20 46 views
7

Tôi đang sử dụng Văn bản tuyệt vời với các Màu phấn trên chủ đề Màu tối. Ngôn ngữ tôi chọn là PHP. Làm thế nào tôi có thể nhận được cú pháp HTML làm nổi bật bên trong các chuỗi PHP & cú pháp heredoc?Làm thế nào để có được cú pháp HTML làm nổi bật bên trong các chuỗi PHP & cú pháp heredoc?

+3

Tuy cần phải biết làm thế nào để làm điều đó với dây, nhưng tôi tìm thấy câu trả lời cho một nửa câu hỏi của tôi. Trong cú pháp heredoc bạn sử dụng tên của ngôn ngữ cho các dấu phân tách. I E. $ o = <<< HTML ....... HTML; – Glyph

+1

Nhận xét trên phải là câu trả lời, phải không? –

+0

Nếu bạn đang thao tác các chuỗi HTML lớn bên trong PHP, có vẻ như bạn đang làm điều gì đó kỳ lạ và/hoặc sai. Bất kỳ khối HTML lớn nào nằm bên ngoài các khối '

Trả lời

9

Đặt tên heredocs của bạn sau ngôn ngữ bạn đang sử dụng. Điều này sẽ làm nổi bật cú pháp trong nhiều trình soạn thảo văn bản, bao gồm cả Văn bản siêu việt.

Ví dụ:

echo <<<HTML 
<!-- put HTML here and it will have syntax highlighting --> 
HTML; 
+0

Tôi cũng chỉ nhận ra rằng bạn có thể sử dụng {$ myAry ['subIdx']} để đặt bất kỳ loại biến nào vào cú pháp heredoc của bạn. Không thể đặt các cuộc gọi chức năng bên trong chúng nhưng bạn có thể đặt giá trị trả lại thành biến trước heredoc, sau đó sử dụng giá trị đó. – Glyph

-1

Chỉ cần mã bên ngoài php để bạn vẫn có thể thấy cú pháp HTML được mã hóa màu và sau đó đặt html đó bên trong php khi bạn đã hoàn tất.

+1

Cảm ơn bạn đã đề xuất, nhưng "thực hiện" không phải là điều thực sự xảy ra với mã tại công ty này. Luôn luôn có nhiều sửa đổi được thực hiện. – Glyph

+1

đó là giải pháp thay thế, không phải là giải pháp. –

0

Wanted để thêm video này như một bình luận cho câu trả lời đáng tin cậy của Ol' nhưng tôi không được phép nêu ra.

Trong khi mã hóa bên ngoài và sau đó sao chép vào có thể là một rắc rối, vì người/biên tập mà không cần nổi bật cú pháp trong heredoc, một workaround dễ dàng là để tạm thời thêm một thẻ đóng php cho thẻ mở heredoc:

<?php 
$myHtmlCode = <<<HTML?> 
    <h1>I am Highlighted</h1> 
    <p>Remove the closing php tag above to finish editing</p> 
HTML; 
?>