从字符串中获取第一个UTF-8字符并保存在DB中

hsz*_*hsz 0 php zend-framework utf-8 zend-db

我插入一个不是A-Zchar 的字母有问题.
例如:

$fullTag = '?wiat';

A 'letter'应该包含?

$data = array(
    'full_tag'  => $fullTag,
    'count'     => 1,
    'letter'    => $fullTag[0],
);
Run Code Online (Sandbox Code Playgroud)

但是当我执行时$table->insert($data);,它会将我作为letter空字符串插入.

如果我设置而不是$fullTag[0]静态字母?- 它工作正常.

letter 专栏是 utf8_polish_ci char(1)

有任何想法吗 ?

Jaa*_*nus 6

而不是$ fullTag [0],你可能想要使用多字节子字符串函数:http://www.php.net/manual/en/function.mb-substr.php ..这些mb_*函数知道多字节编码,$ fullTag [0]可能只给你一个字节.