簡體   English   中英

mysqli_query結果轉換為JSON。 如何應用htmlentities()?

[英]mysqli_query result to JSON. How to apply htmlentities()?

我有這段代碼,我用它來填充來自另一個php頁面的ajax調用的select:

$id = $_GET["id"];
$sql = "SELECT town_name, 
               town_code 
        FROM   tbtown 
        WHERE  area_id = '$id' 
        ORDER BY town_name";
$result = mysqli_query($conn, $sql);
$arr = array();
while ($row = mysqli_fetch_array($result, MYSQL_ASSOC)) {
    $arr[] = $row;
}
echo json_encode($arr);

有些town_name列值,包含了諸如字符è ì我發現,在這些情況下json_encode()函數該值設置為NULL。

我還發現將htmlentities()函數應用於每個數組值可以解決此問題。

我想知道是否有簡單的方法將htmlentities()應用於整個數組。

您可以為此使用array_walk_recursive

array_walk_recursive($arr, function(&$item, $key) {
    $item = htmlentities($item);
});

試試這個

echo json_encode($arr, JSON_UNESCAPED_UNICODE);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM