2

我有一个包含以下内容的字符串:

  \ud83c\udf80NEW STUFF \u0026 SECOND STUFF\n\ud83d\udcf1Sms\/ Kik : 085738566676 \/ veinshop\n\u26d4 All item exclude ongkir\n\u2708Shipping mon-fri\n\ud83d\udcb0BCA only\n\ud83d\ude90JNE\n\ud83c\udfe1 Denpasar-bali

我想将它存储在我的 MySQL 数据库中,但它总是给我空。我使用doctrine2 ORM 作为数据库的接口。这是具有字符串属性的实体:

class Shop
{

 /**
     *
     * @var string
     * @ORM\Column(name="bio", type="string", nullable=true)
     */
    private $bio;

 /**
     * Set bio
     *
     * @param string $bio
     * @return InstagramShop
     */
    public function setBio($bio)
    {
        $this->bio = $bio;

        return $this;
    }

    /**
     * Get bio
     *
     * @return string 
     */
    public function getBio()
    {
        return $this->bio;
    }
}

当我使用 bio 设置此 Shop 实体并在实体上调用 persist 时。存储的值为 NULL。我已将表格排序规则设置为utf8mb4,并将 dbo 中的字符集设置为utf8mb4

4

1 回答 1

3

你可能有一个看起来像这样的配置:

doctrine:
    dbal:
        default_connection: default
        connections:
            default:
                dbname: %database_name%
                ...
                charset: utf8mb4

确保charset设置为utf8mb4. 这是您的连接排序规则。

于 2013-09-24T16:11:28.033 回答