[英]How to echo an image with php
我正在嘗試回顯我的'_images'文件夾中的圖像,但是如果我編寫以下代碼,它只適用於我的網站:
echo '<img src="http://mywebsite.com/mytheme/wp-content/themes/my theme/_images/project3image1.jpg">';
我把它改成了這個,所以當別人使用我的主題時,它會將它們帶到他們自己的網站目錄:
echo '<img src="<?php bloginfo('stylesheet_directory'); ?>/_images/project3image1.jpg">';
但是當我把它和預覽我的網站時,這個代碼肯定有問題,它給了我這個錯誤:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home/content/32/9825632/html/bomb/wp-content/themes/bomb/header.php on line 101
我是一個PHP菜鳥,所以這可能是一個明顯的錯誤!
你已經在php / echo out了,所以你不需要使用php標簽:
echo '<img src="' . bloginfo('stylesheet_directory') . '/_images/project3image1.jpg">';
不要將標記與代碼混合。 你在尋找麻煩,這一切都失去了可讀性。 像這樣使用printf
:
printf( '<img src="%s/_images/project3image1.jpg">', bloginfo('stylesheet_directory'));
但你真正的問題是嵌套的引號。 如果使用'
來分隔字符串邊界,例如:
'foo'
那么如果字符串內容包含'
:
'foo'bar'
它必須像這樣逃脫:
'foo\'bar'
否則您的內容引號將被視為字符串的結束引用。 或者您可以使用"
代替:
"foo'bar"
但是再次 - 如果你的字符串內容包含"
那么它必須被轉義:
"foo\"bar"
如果string包含"
和'
那么你只需要轉義那個字符串分隔符,即:
'foo"bar\'foo'
要么
"foo'bar\"foo"
要使用第二種代碼樣式,首先要關閉php標記:
//...your php code before echoing the img
//here you close the tag
?>
<img src="<?=bloginfo('stylesheet_directory')?>/_images/project3image1.jpg" />
<?php //here you open it again
//your rest php code...
你的PHP代碼中的任何地方,如果你想回應一些HTML,只需關閉php標簽,編寫你的HTML並再次打開php標簽。 但最好不要混淆html和php。 嘗試在你的文件開頭寫完所有的PHP代碼,然后在你的所有html之后編寫。 在你的PHP代碼中使用動態值創建變量並在html中注入php代碼,以在任何屬性或標記內容中輸出它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.