我正在使用印地语向用户显示数据。但我想从出现给用户的所有单词中替换一个特定的字母。我想分别用“ष”替换
“ख”
“खा”和“षा”
。我想在插入数据库时替换它。表示如果用户以任何形式键入“ख”,则应将其作为“ष”插入数据库中。所以有人对此有想法吗???
问问题
226 次
2 回答
0
我创建了自己的名为 stringhandler.php 的库文件。以下是stringhandler.php。
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
class stringhandler {
function normalize_str($str)
{
$invalid = array('ख'=>'ष', 'खा'=>' षा', 'खि'=>'षि', 'खी'=>'षी', 'खु'=>'षु', 'खू'=>'षू',
'खे'=>'षे', 'खै'=>'षै', 'खो'=>'षो', 'खौ'=>' षौ', 'खं'=>' षं', 'खः'=>'षः');
$str = str_replace(array_keys($invalid), array_values($invalid), $str);
return $str;
}
}
在模型文件中
'fname'=>$this->stringhandler->normalize_str($this->input->post('fname')),
'fathername'=>$this->stringhandler->normalize_str($this->input->post('fathername')),
希望这会对某人有所帮助..
于 2014-03-15T04:44:05.377 回答
0
您可以使用mb_ereg_replace
<?php
$a='[ख]';
$string="खखखख Hello खखखखखख";
$b=mb_ereg_replace( $a, 'षा' , $string );
echo $b;
//output: षाषाषाषाषाषाषाषा Hello षाषाषाषाषाषाषाषाषाषाषाषा
?>
确保将 html 设置为utf-8
并将其包含在页面的开头:
define('CHARSET','UTF-8');
mb_internal_encoding('UTF-8');
mb_regex_encoding('UTF-8');
于 2014-03-14T12:07:49.553 回答