Maison  >  Article  >  développement back-end  >  Explication détaillée des exemples de fonctions en PHP prenant en charge le fractionnement des chaînes chinoises

Explication détaillée des exemples de fonctions en PHP prenant en charge le fractionnement des chaînes chinoises

怪我咯
怪我咯original
2017-07-07 10:13:11996parcourir

Cet article partage avec vous deux méthodes d'utilisation de la méthode mb_xxx pour réaliser la segmentation des caractères chinois en PHP. Les idées de base sont similaires. Les amis dans le besoin peuvent s'y référer.

str_split ne prend pas en charge le chinois, utilisez la fonction mb_xx pour implémenter une

/**
 * Convert a string to an array
 * @param string $str
 * @param number $split_length
 * @return multitype:string
 */
function mb_str_split($str,$split_length=1,$charset="UTF-8"){
  if(func_num_args()==1){
    return preg_split(&#39;/(?<!^)(?!$)/u&#39;, $str);
  }
  if($split_length<1)return false;
  $len = mb_strlen($str, $charset);
  $arr = array();
  for($i=0;$i<$len;$i+=$split_length){
    $s = mb_substr($str, $i, $split_length, $charset);
    $arr[] = $s;
  }
  return $arr;
}

Méthode 2 :

function mbStrSplit ($string, $len=1) {
  $start = 0;
  $strlen = mb_strlen($string);
  while ($strlen) {
    $array[] = mb_substr($string,$start,$len,"utf8");
    $string = mb_substr($string, $len, $strlen,"utf8");
    $strlen = mb_strlen($string);
  }
  return $array;
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn