2013-08-20 13 views
7

Sto usando Sublime Text con il tema Pastels on Dark. La mia lingua preferita è PHP. Come posso ottenere l'evidenziazione della sintassi HTML all'interno delle stringhe di PHP & sintassi heredoc?Come ottengo l'evidenziazione della sintassi HTML all'interno delle stringhe PHP e della sintassi heredoc?

+3

Ancora ho bisogno di sapere come farlo con le stringhe, ma ho trovato la risposta a metà della mia domanda. Nella sintassi heredoc si usa il nome della lingua per i delimitatori. OSSIA $ o = <<< HTML ....... HTML; – Glyph

+1

Il commento sopra dovrebbe essere una risposta, no? –

+0

Se stai manipolando stringhe HTML di grandi dimensioni all'interno di PHP, sembra che tu stia facendo qualcosa di strano e/o sbagliato. Qualsiasi grosso pezzo di HTML appartiene al di fuori dei blocchi '

risposta

9

Assegna un nome ai tuoi heredoc dopo la lingua che stai utilizzando. Questo evidenzierà la sintassi in molti editor di testo, incluso il testo sublime.

Ad esempio:

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

Mi sono anche reso conto che puoi usare {$ myAry ['subIdx']} per inserire qualsiasi tipo di variabile nella sintassi heredoc. Le chiamate di funzione non possono essere inserite al loro interno, ma è possibile impostare il valore di ritorno su una variabile prima di heredoc, quindi utilizzarlo. – Glyph

-1

Solo codice al di fuori di php in modo da poter ancora vedere la sintassi HTML codificata a colori, e quindi inserire l'html all'interno del php una volta che hai finito.

+1

Grazie per il suggerimento, ma "fatto" non è qualcosa che davvero accade a codice in questa azienda. Ci sono sempre più modifiche da apportare. – Glyph

+1

è una soluzione alternativa, non una soluzione. –

0

voluto aggiungere questo come un commento alla risposta di affidabile Ol', ma io non sono ancora ammessi.

Mentre la codifica di fuori e poi copiare in può essere una seccatura, per le persone/i redattori senza evidenziazione della sintassi in heredoc, una soluzione semplice è quello di aggiungere temporaneamente un tag di chiusura php per il tag di apertura heredoc:

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