2013-03-29 85 views
0

我正在爲我的一個網站建立新聞欄目。我將每篇新聞文章的信息存儲在數據庫表news中,文章正文位於copy列,其類型設置爲longtext使用preg_replace顯示段落,照片可以添加到每個段落?

我用下面的代碼行來顯示新聞文章的段落:

<p class="news_copy"><?php echo preg_replace('/[\r\n]+/', '</p><p class="news_copy">', $news['copy']); ?></p> 

和它的作品絕對完美。

這篇文章的原因是因爲我希望能夠爲每篇新聞文章顯示多張照片。我在數據庫中設置了一個主角圖像,但是如果在一個故事中有另外4張照片,另一箇中有6個(除了主角圖像),有沒有辦法讓我顯示1張或更多照片(s)每段?

如果這太混亂,我會很樂意詳細說明。

非常感謝!

+0

爲什麼不把HTML內容存儲在數據庫中? –

+0

你能詳細說一下嗎,邁克? – wordman

+0

是的,爲什麼您不只是將HTML內容存儲在數據庫中(帶有您想要它們的圖像),而是試圖對明文進行後處理以添加HTML標記? –

回答

0
<?php echo insert_par_and_photos($news['copy'], $news['photos']); ?> 

function insert_par_and_photos($copy, $photos) { 
    $pars = preg_split('/[\r\n]+/', $copy); 
    $result = ''; 
    foreach ($pars as $i => $par) { 
    $result .= '<p class="news_copy">'; 
    $result .= $par; 
    if ($i < count($photos)) { 
     $result .= '<img src="'+$photos[$i]+'"/>'; 
    } 
    $result .= '</p>';   
    } 
    return $result; 
} 
+0

謝謝你的詳細回覆。我需要一些時間來消化這一點,因爲這整個區域對我來說都是一個新的方向。非常感謝! – wordman