2014-02-26 51 views
0

我知道這是一個簡單的問題,但我如何可以在數組中輸出圖像,例如我有一個輸入字段和按鈕,所以每當用戶輸入數據並單擊提交時,用「感謝訂閱」等類似的東西,我想用圖像替換這個文本,我目前已經嘗試了以下內容,但它只是打印出類似於它的路徑。在數組中顯示圖像PHP

'uk' => array(
       'thanks' => "<img src='../assets/images/ukregisterimg.jpg'>", 
       'error' => 'Something went wrong. Please refresh the page and try again.', 
       'no_email' => 'Please provide a valid email address.' 
      ), 
+0

你怎麼echo'ing給用戶?你能展示那麼一點代碼嗎? – naththedeveloper

回答

2

您的意思是這樣的?這絕不是在多級陣列訪問信息不同...

echo $array['uk']['thanks']; 

雖然我在的話,我建議你做這樣的事情(img的部分):

'uk' => array(
     'error' => 'Something went wrong. Please refresh the page and try again.', 
     'no_email' => 'Please provide a valid email address.', 
     'img' => array(
        'src' => "../assets/images/ukregisterimg.jpg" 
        'alt'=> "Some example alt" 
        ) 
     ) 
echo '<img src="'.$array['img']['src'].'" alt="'.$array['img']['alt'].' />'; 

這樣,你可以在將來添加項目,如widthheight,或title,而無需重新編譯整個代碼


對於我自己的知識,我很想知道,如果有數組中方便地看到自己的價值觀:

'img' => array(
    'src' => "../assets/images/ukregisterimg.jpg" 
    'alt'=> "Some example alt", 
    'html' => '<img src="'.$this->alt.'" alt="'.$this->alt.'" />' // use current array's values dynamicly 
    ) 
+0

No Martijn,你不能以這種方式引用數組本身:/ – moonwave99

+0

我知道這種方式不起作用,它僅僅是我意思解釋的代碼提示。但我不知道它的工作版本。會很酷。我相信其中一個'$ _SERVER'值是通過引用 – Martijn

+0

來引用的,我的意思是你根本不能以任何方式^^ [例如YAML可以](http://yaml.org/spec/history/2001-12- 10.html#trans-ptr),但是PHP數組語法不能[感謝上帝,在某種程度上]。 – moonwave99

0

它看起來像,實際上該數據輸出的代碼通過htmlentities()或逃避它等效功能。您需要修改實際輸出字符串的代碼,以便它不會將其轉義。

例如,如果它說:print(htmlentities($result['uk']['thanks']));你會改變它只是print($result['uk']['thanks']);