解码SQL中的特殊字符

时间:2013-09-18 16:42:47

标签: php json html-entities

好的,所以这是我的数据库,我在HTML实体中有一些标题,而其他标题有正常字符:

TITLE

MAMÁ
MAMÁ

所以我的问题是当我打电话给标题时:

/* If connection to database, run sql statement. */
if ($conn)
{
    $fetch = mysql_query("SELECT * FROM test where title_test like '%" . mysql_real_escape_string($_GET['term']) . "%' and test_stock<>0");

    /* Retrieve and store in array the results of the query.*/
    while ($row = mysql_fetch_array($fetch, MYSQL_ASSOC)) {

        $row_array['id'] = $row['id_test'];
        $row_array['value'] = $row['title_test'];


        array_push($return_arr,$row_array);
    }
}

/* Free connection resources. */
mysql_close($conn);

/* Toss back results as json encoded array. */
echo json_encode($return_arr);

这是结果:

OUTPUT

MAM&Aacute;
NULL

所以我添加了mysql_set_charset('utf8',$conn);

这就是我的结果:

OUTPUT

MAM&Aacute;
MAMÁ

如何使用HTML实体解码标题并使其打印出来:

OUTPUT

MAMÁ
MAMÁ

1 个答案:

答案 0 :(得分:0)

你正在寻找htmlspecialchars_decode函数。

echo htmlspecialchars_decode('&Aacute;')

会产生:

Á