PHP preg_split utf8个字符

Pau*_*ius 5 php cakephp preg-split

有preg split和utf的问题.这是代码:

$original['words'] = preg_split("/[\s]+/", $original['text']);
print_r($original);
Run Code Online (Sandbox Code Playgroud)

这是答案:

Array
(

    [text] => Šios baterijos kaista
    [words] => Array
        (
            [0] => ?
            [1] => ios
            [2] => baterijos
            [3] => kaista
Run Code Online (Sandbox Code Playgroud)

此代码在CakePHP框架中运行.请注意[文本]在单词之前正确显示,并且在分割进度中混乱.顺便说一句,我尝试使用这些:

mb_internal_encoding( 'UTF-8'); 
mb_regex_encoding( 'UTF-8');  
ini_set('default_charset','utf-8');
Run Code Online (Sandbox Code Playgroud)

没人帮忙.谢谢.

Jon*_*Jon 11

您需要preg_split通过将u 修饰符添加到正则表达式来启用utf-8模式:

preg_split("/[\s]+/u", $original['text']);
Run Code Online (Sandbox Code Playgroud)

您在尝试查找解决方案时提到的配置指令在此处不起作用.