Ejemplo n.º 1
0
Archivo: StrCtl.php Proyecto: poppen/p2
 /**
  * (パターン)文字列を全角にする
  *
  * @static
  * @access  private
  * @return  string
  */
 function getPatternToZen($pattern, $no_escape = false)
 {
     $kigou = StrCtl::getKigouPattern($no_escape);
     // 壊れる
     // $pattern = str_replace($kigou['han'], $kigou['zen'], $pattern);
     if (P2_MBREGEX_AVAILABLE == 1) {
         foreach ($kigou['zen'] as $k => $v) {
             $word_fm = $kigou['han'][$k];
             // preg_quote()で2バイト目が0x5B("[")の"ー"なども変換されてしまうので
             // UTF-8にしてから正規表現の特殊文字をエスケープ
             $word_fm = mb_convert_encoding($word_fm, 'UTF-8', 'SJIS-win');
             $word_fm = preg_quote($word_fm);
             $word_fm = mb_convert_encoding($word_fm, 'SJIS-win', 'UTF-8');
             $pattern = mb_ereg_replace($word_fm, $kigou['zen'][$k], $pattern);
         }
     }
     $pattern = mb_convert_kana($pattern, 'RNKV');
     return $pattern;
 }