[英]PHP - Echoing a variable in color
您可能已經猜到,我剛開始學習PHP。 我回顯了.txt文件的內容,但我希望它能脫穎而出,因此我認為我可以將其設置為其他顏色。
我的代碼沒有顏色:
<?php
$file = fopen("instructions.txt", "r") or exit("Unable to open file");
while(!feof($file))
{
echo fgets($file);
}
fclose($file);
?>
我已經對此進行了研究,並看到了其他人使用div樣式的建議,但是,這對我沒有用,而是在頁面下方一直給我紅色錯誤! 我認為這是因為我正在使用“ fgets”而不僅僅是一個變量嗎? 有沒有辦法將回聲塗成紅色?
我嘗試過但無法正常工作的代碼:
echo "<div style=\"color: red;\">fgets($file)</div>";
(通常)您需要將實際的PHP代碼與字符串的文字部分分開。 一種方法是使用字符串串聯運算符.
。 例如
echo "<div style=\\"color: red;\\">" . fgets($file) . "</div>";
其他答案已經告訴您,不能在雙引號字符串中使用函數調用。 另外要提到的是,對於僅格式化任務,與<div>
元素相比, <span>
元素更適合。
像這樣: https : //developer.mozilla.org/en-US/docs/Web/HTML/Element/span
你應該試試:
<div style="color: red;"><?= fgets($file);?></div>
注意: <?=
是<?php echo fgets($file);?>
方法。
此版本不需要轉義雙引號:
echo '<div style="color:red;">' . fgets($file) . '</div>';
您可以使用串聯運算符執行此操作.
如前所述,但是IMO使用sprintf
這樣更干凈:
echo sprintf("<div style='color: red;'>%s</div>", fgets($file));
如果您有兩組文本要在不同的位置插入字符串,則此方法將自己使用,例如:
echo sprintf("<div style='color: red;'>%s</div><div style='color: blue;'>%s</div>", fgets($file), fgets($file2));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.