Domanda
Come faccio a cambiare il colore di un messaggio di eco e centrare il messaggio nella PHP che ho scritto. La linea che ho è:
echo 'Request has been sent. Please wait for my reply!';
Soluzione
Come sulla scrittura di alcuni tag HTML e qualche CSS, se stai output questo al browser?
echo '<span style="color:#AFA;text-align:center;">Request has been sent. Please wait for my reply!</span>';
Non funziona da console, però, solo attraverso il browser.
Altri suggerimenti
Come sulla scrittura di alcune sequenze di escape?
echo "\033[01;31m Request has been sent. Please wait for my reply! \033[0m";
Non funziona attraverso il browser, però, solo dal console;))
E se si sta utilizzando la linea di comando su Windows, scaricare un programma che consente ANSICON consolle di accettare i codici colore. ANSICON è disponibile presso https://github.com/adoxa/ansicon/releases
Se si desidera inviare il colore ANSI per consolare, ottenere questo piccolo pacchetto,
Prova questo
<?php
echo '<i style="color:blue;font-size:30px;font-family:calibri ;">
hello php color </i> ';
//we cannot use double quote after echo , it must be single quote.
?>
Questa è una vecchia questione, ma nessuno ha risposto alla domanda riguardante centraggio testo in un terminale.
/**
* Centers a string of text in a terminal window
*
* @param string $text The text to center
* @param string $pad_string If set, the string to pad with (eg. '=' for a nice header)
*
* @return string The padded result, ready to echo
*/
function center($text, $pad_string = ' ') {
$window_size = (int) `tput cols`;
return str_pad($text, $window_size, $pad_string, STR_PAD_BOTH)."\n";
}
echo center('foo');
echo center('bar baz', '=');
Se l'eco fuori a un browser, è necessario utilizzare i CSS. Ciò richiederebbe avendo anche il commento avvolto in un tag HTML. Qualcosa di simile:
echo '<p style="color: red; text-align: center">
Request has been sent. Please wait for my reply!
</p>';