如何将html实体转换为utf-8时上传到数据库?PHP


How to convert html entities to utf-8 when upload to database? PHP

我上传一个符号'<'到数据库,从<div value = '<'>获得符号。当我查看数据库结果时,显示了一个html实体&lt;。我试过html_entity_decode(),但它不起作用。

这是我的代码div:
<option value = "<"   <?php if ( ! empty ( $dwwp_stored_meta['operator-post'] ) ) {
if ( $dwwp_stored_meta['operator-post'][0]== '<' )
    echo 'selected = "selected"';
} ?>> < </option>

下面是更新函数:

update_post_meta( $post_id, 'operator', sanitize_text_field(html_entity_decode($_POST[ 'operator' ],ENT_QUOTES,"UTF-8" )));

但是函数上传一个html实体,我怎么解决呢?非常感谢。

sanitize_text_field说:"转换为单个<字符到实体">

所以,不要使用那个函数。无论如何,它与SQL无关——它意味着输出到HTML文本字段,而不是SQL文本字段。

使用PHP内置的utf8-encode函数

http://php.net/manual/en/function.utf8-encode.php