2010-12-18 43 views
0

我想弄清楚如何將HTML存儲到PHP中的數組中,以便我可以將它傳遞給json_enocde。當我嘗試:如何將HTML存儲在PHP數組中

$page_data = array(); 
$page_data['title'] = "This is a test"; 
$page_data['content'] = <page content>; // <page content> is just a placeholder 

print_r($page_data); 

我得到:

Array 
(
    [title] => This is a test 
    [content] => 
) 
<page_content> 

任何想法如何解決這個問題。我猜這是與引用搞砸的東西有關,但我試過使用addslashes等,似乎沒有什麼能解決問題。

回答

-1

我才意識到,我是打電話來獲取數據的庫,我想放入數組只是直接輸出到瀏覽器,所以我結束了使用ob_start和ob_get_clean()來獲取數據到一個字符串。

1

作爲一個字符串:

$page_data['content'] = '<page content>'; 

裹成單引號,這樣你就不必在屬性雙引號的問題:

$page_data['content'] = '<a href="page.php">Page</a>'; 

例子:

$page_data = array('title' => "This is a test", 
        'content' => '<a href="page.php">Page</a>'); 

echo json_encode($page_data); 

給出:

{"title":"This is a test","content":"<a href=\"page.php\">Page<\/a>"} 
0

你可以用rawurlencode()對其編碼,然後在JavaScript解碼它UNESCAPE()